VTK  9.1.0
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{
29public:
33 std::vector<float> Data;
37};
38
39/*
40 * Single Seg-Y trace reader
41 */
43{
44private:
45 vtkSegYTraceHeaderBytesPositions traceHeaderBytesPos;
46
47 int XCoordinate;
48 int YCoordinate;
49
50public:
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