VTK  9.0.2
vtkSegYTraceReader.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkSegYTraceReader.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 
16 #ifndef vtkSegYTraceReader_h
17 #define vtkSegYTraceReader_h
18 
19 #include <fstream>
20 #include <vector>
21 
23 
24 /*
25  * Single Seg-Y trace
26  */
28 {
29 public:
33  std::vector<float> Data;
37 };
38 
39 /*
40  * Single Seg-Y trace reader
41  */
43 {
44 private:
45  vtkSegYTraceHeaderBytesPositions traceHeaderBytesPos;
46 
47  int XCoordinate;
48  int YCoordinate;
49 
50 public:
52 
53  void SetXYCoordBytePositions(int x, int y);
54  void PrintTraceHeader(std::istream& in, int startPos);
55  void ReadTrace(std::streamoff& startPos, std::istream& in, int formatCode, vtkSegYTrace* trace);
56  void ReadInlineCrossline(std::streamoff& startPos, std::istream& in, int formatCode,
57  int* inlineNumber, int* crosslineNumber, int* xCoord, int* yCoord, short* coordMultiplier);
58 
59  int GetTraceSize(int numSamples, int formatCode);
60 };
61 
62 #endif // vtkSegYTraceReader_h
63 // VTK-HeaderTest-Exclude: vtkSegYTraceReader.h
int GetTraceSize(int numSamples, int formatCode)
void ReadInlineCrossline(std::streamoff &startPos, std::istream &in, int formatCode, int *inlineNumber, int *crosslineNumber, int *xCoord, int *yCoord, short *coordMultiplier)
void SetXYCoordBytePositions(int x, int y)
void PrintTraceHeader(std::istream &in, int startPos)
void ReadTrace(std::streamoff &startPos, std::istream &in, int formatCode, vtkSegYTrace *trace)
short CoordinateMultiplier
std::vector< float > Data