VTK
vtkSegYReaderInternal.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkSegYReaderInternal.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 vtkSegYReaderInternal_h
17 #define vtkSegYReaderInternal_h
18 #ifndef __VTK_WRAP__
19 
20 #include <fstream>
21 #include <string>
22 #include <vector>
23 
24 // Forward declarations
25 class vtkStructuredGrid;
26 class vtkImageData;
27 class vtkSegYTraceReader;
28 class vtkSegYTrace;
30 
32 {
33 public:
35  vtkSegYReaderInternal(const vtkSegYReaderInternal& other) = delete;
38 
39 public:
40  bool Is3DComputeParameters(int* extent, double origin[3], double spacing[3][3], int* spacingSign);
41  void LoadTraces(int *extent);
42 
43  void ExportData(vtkImageData*, int* extent,
44  double origin[3], double spacing[3][3], int* spacingSign);
45  void ExportData(vtkStructuredGrid*, int* extent,
46  double origin[3], double spacing[3][3]);
47 
48  void SetXYCoordBytePositions(int x, int y);
49  void SetVerticalCRS(int);
50 
51  std::ifstream In;
52 
53 protected:
54  bool ReadHeader();
55 
56 private:
57  std::vector<vtkSegYTrace*> Traces;
58  vtkSegYBinaryHeaderBytesPositions* BinaryHeaderBytesPos;
59  vtkSegYTraceReader* TraceReader;
60  int VerticalCRS;
61  // Binary Header
62  short SampleInterval;
63  int FormatCode;
64  int SampleCountPerTrace;
65 };
66 
67 #endif
68 #endif // vtkSegYReaderInternal_h
69 // VTK-HeaderTest-Exclude: vtkSegYReaderInternal.h
void ExportData(vtkImageData *, int *extent, double origin[3], double spacing[3][3], int *spacingSign)
void SetXYCoordBytePositions(int x, int y)
void LoadTraces(int *extent)
bool Is3DComputeParameters(int *extent, double origin[3], double spacing[3][3], int *spacingSign)
vtkSegYReaderInternal & operator=(const vtkSegYReaderInternal &other)=delete
topologically and geometrically regular array of data
Definition: vtkImageData.h:45
topologically regular array of data