UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
hds::SEGY Class Reference

Public Types

enum  Format {
  UNDEFINED = 0, IBM = 1, Int4 = 2, Int2 = 3,
  IEEE = 5
}
 
enum  TraceHeaderKey {
  THK_NTR = 0, THK_NSP, THK_NRP, THK_NDP,
  THK_L, THK_NS, THK_DT, THK_MUTS,
  THK_MUTE
}
 

Public Member Functions

 SEGY (QIODevice *segy_io_dev=0x0)
 
 ~SEGY ()
 
bool nextTrace (std::vector< float > &samples, std::vector< int > &header)
 
void reset ()
 
int samplesNum () const
 
float dtVal () const
 
Format format () const
 
qint64 ioDeviceSize () const
 
qint64 ioDevicePos () const
 

Static Public Member Functions

static int getTrHdrVal (TraceHeaderKey key, const std::vector< int > &header)
 
static QString formatStr (Format fmt)
 

Protected Member Functions

bool load_current_line_headers ()
 

Protected Attributes

QIODevice * m_psegy_io_dev
 
std::vector< char > m_current_line_text_hdr
 
std::vector< char > m_current_line_bin_hdr
 
bool m_cur_line_hdrs_loaded
 

Member Enumeration Documentation

Format of SEG-Y file.

Key of trace header.

Enumerator
THK_NTR 

Logical number of the trace.

THK_NDP 

CDP ensamble number.

THK_NS 

Number of samples.

THK_DT 

Sample interval (mks).

THK_MUTS 

Start mute time (ms).

THK_MUTE 

End mute time (ms).

Constructor & Destructor Documentation

hds::SEGY::SEGY ( QIODevice *  segy_io_dev = 0x0)

Default constructor.

hds::SEGY::~SEGY ( )

Destructor. Get next trace from line sequence, return false if no more traces.

Member Function Documentation

float hds::SEGY::dtVal ( ) const
Get dt(ms) sampling from binary line header.

Return value < 0 on error.

Format hds::SEGY::format ( ) const

Return format of SEG-Y. UNDEFINED on error.

static QString hds::SEGY::formatStr ( Format  fmt)
static

Make format string form format type.

static int hds::SEGY::getTrHdrVal ( TraceHeaderKey  key,
const std::vector< int > &  header 
)
static

Get value from trace header with provided key.

qint64 hds::SEGY::ioDevicePos ( ) const

Get position on IO device of SEG-Y file (useful for progress).

qint64 hds::SEGY::ioDeviceSize ( ) const

Get size of IO device of SEG-Y file (useful for progress).

bool hds::SEGY::load_current_line_headers ( )
protected

Load headers for current line.

void hds::SEGY::reset ( )

Set pointer to the first trace.

int hds::SEGY::samplesNum ( ) const
Get number of samples from binary line header. 

Return -1 on error.

Member Data Documentation

std::vector<char> hds::SEGY::m_current_line_bin_hdr
protected

Current line headers loaded flag.

std::vector<char> hds::SEGY::m_current_line_text_hdr
protected

Binary header for current line.

QIODevice* hds::SEGY::m_psegy_io_dev
protected

< I/O device for SEGY data access. Text header for current line.


The documentation for this class was generated from the following file: