Open Inventor Release 2024.2.0
 
Loading...
Searching...
No Matches
SoVRSegyTraceHeaderBytePosition Class Reference

VolumeViz SEGY file trace header field description. More...

#include <VolumeViz/readers/SoVRSegyReader.h>

Public Types

enum  TraceAttribute {
  SEGY_TRACL ,
  SEGY_TRACR ,
  SEGY_FLDR ,
  SEGY_TRACF ,
  SEGY_EP ,
  SEGY_CDP ,
  SEGY_CDPT ,
  SEGY_TRID ,
  SEGY_NVS ,
  SEGY_NHS ,
  SEGY_DUSE ,
  SEGY_OFFSET ,
  SEGY_GELEV ,
  SEGY_SELEV ,
  SEGY_SDEPTH ,
  SEGY_GDEL ,
  SEGY_SDEL ,
  SEGY_SWDEP ,
  SEGY_GWDEP ,
  SEGY_SCALEL ,
  SEGY_SCALCO ,
  SEGY_SX ,
  SEGY_SY ,
  SEGY_GX ,
  SEGY_GY ,
  SEGY_COUNIT ,
  SEGY_WEVEL ,
  SEGY_SWEVEL ,
  SEGY_SUT ,
  SEGY_GUT ,
  SEGY_SSTAT ,
  SEGY_GSTAT ,
  SEGY_TSTAT ,
  SEGY_LAGA ,
  SEGY_LAGB ,
  SEGY_DELRT ,
  SEGY_MUTS ,
  SEGY_MUTE ,
  SEGY_NS ,
  SEGY_DT ,
  SEGY_GAIN ,
  SEGY_IGC ,
  SEGY_IGI ,
  SEGY_CORR ,
  SEGY_SFS ,
  SEGY_SFE ,
  SEGY_SLEN ,
  SEGY_STYP ,
  SEGY_STAS ,
  SEGY_STAE ,
  SEGY_TATYP ,
  SEGY_AFILF ,
  SEGY_AFILS ,
  SEGY_NOFILF ,
  SEGY_NOFILS ,
  SEGY_LCF ,
  SEGY_HCF ,
  SEGY_LCS ,
  SEGY_HCS ,
  SEGY_YEAR ,
  SEGY_DAY ,
  SEGY_HOUR ,
  SEGY_MINUTE ,
  SEGY_SEC ,
  SEGY_TIMBAS ,
  SEGY_TRWF ,
  SEGY_GRNORS ,
  SEGY_GRNOFR ,
  SEGY_GRNLOF ,
  SEGY_GAPS ,
  SEGY_OTRAV ,
  SEGY_CDPX ,
  SEGY_CDPY ,
  SEGY_INLINENUMBER ,
  SEGY_CROSSLINENUMBER ,
  SEGY_SHOTPOINTNUMBER ,
  SEGY_SHOTPOINTSCALE ,
  SEGY_TVMU ,
  SEGY_TRANSDUCTIONCONSTANTM ,
  SEGY_TRANSDUCTIONCONSTANTP ,
  SEGY_TRANSDUCTIONUNITS ,
  SEGY_DTID ,
  SEGY_TSCALE ,
  SEGY_NUM_FIELDS ,
  SEGY_CROSSLINE = SEGY_CDP ,
  SEGY_INLINE = SEGY_TRACR
}
 Field names. More...
 
enum  TraceByteFormat {
  SEGY_INTEGER8_FORMAT ,
  SEGY_INTEGER16_FORMAT ,
  SEGY_INTEGER32_FORMAT ,
  SEGY_IBM_FLOAT_FORMAT ,
  SEGY_IEEE_FLOAT_FORMAT
}
 Field formats. More...
 

Public Member Functions

 SoVRSegyTraceHeaderBytePosition ()
 constructor
 
void setBytePosition (TraceAttribute attr, uint8_t position)
 Sets/Gets the byte position of a specific attribute within the trace header.
 
uint8_t getBytePosition (TraceAttribute attr) const
 
uint8_t getByteLength (TraceAttribute attr) const
 Gets the field length of a specific attribute within the trace header.
 
void setByteFormat (TraceAttribute attr, TraceByteFormat format)
 Sets/Gets the field format of a specific attribute within the trace header.
 
TraceByteFormat getByteFormat (TraceAttribute attr) const
 
int getFieldValue (TraceAttribute attr, const SoVRSegyTraceIdHeader &trHdr) const
 Gets the value of a specific field.
 

Detailed Description

VolumeViz SEGY file trace header field description.

This class allows describing the position, the length and the format of each field within a SEGY trace header. (SEGY is a widely used format for storing seismic data). It is used to query this information from the SEGY file reader (see SoVRSegyFileReader::getSegyTraceHeader). See also SoVRSegyFileHeader.

Definition at line 44 of file SoVRSegyReader.h.

Member Enumeration Documentation

◆ TraceAttribute

Field names.

Enumerator
SEGY_TRACL 
SEGY_TRACR 
SEGY_FLDR 
SEGY_TRACF 
SEGY_EP 
SEGY_CDP 
SEGY_CDPT 
SEGY_TRID 
SEGY_NVS 
SEGY_NHS 
SEGY_DUSE 
SEGY_OFFSET 
SEGY_GELEV 
SEGY_SELEV 
SEGY_SDEPTH 
SEGY_GDEL 
SEGY_SDEL 
SEGY_SWDEP 
SEGY_GWDEP 
SEGY_SCALEL 
SEGY_SCALCO 
SEGY_SX 
SEGY_SY 
SEGY_GX 
SEGY_GY 
SEGY_COUNIT 
SEGY_WEVEL 
SEGY_SWEVEL 
SEGY_SUT 
SEGY_GUT 
SEGY_SSTAT 
SEGY_GSTAT 
SEGY_TSTAT 
SEGY_LAGA 
SEGY_LAGB 
SEGY_DELRT 
SEGY_MUTS 
SEGY_MUTE 
SEGY_NS 
SEGY_DT 
SEGY_GAIN 
SEGY_IGC 
SEGY_IGI 
SEGY_CORR 
SEGY_SFS 
SEGY_SFE 
SEGY_SLEN 
SEGY_STYP 
SEGY_STAS 
SEGY_STAE 
SEGY_TATYP 
SEGY_AFILF 
SEGY_AFILS 
SEGY_NOFILF 
SEGY_NOFILS 
SEGY_LCF 
SEGY_HCF 
SEGY_LCS 
SEGY_HCS 
SEGY_YEAR 
SEGY_DAY 
SEGY_HOUR 
SEGY_MINUTE 
SEGY_SEC 
SEGY_TIMBAS 
SEGY_TRWF 
SEGY_GRNORS 
SEGY_GRNOFR 
SEGY_GRNLOF 
SEGY_GAPS 
SEGY_OTRAV 
SEGY_CDPX 
SEGY_CDPY 
SEGY_INLINENUMBER 
SEGY_CROSSLINENUMBER 
SEGY_SHOTPOINTNUMBER 
SEGY_SHOTPOINTSCALE 
SEGY_TVMU 
SEGY_TRANSDUCTIONCONSTANTM 
SEGY_TRANSDUCTIONCONSTANTP 
SEGY_TRANSDUCTIONUNITS 
SEGY_DTID 
SEGY_TSCALE 
SEGY_NUM_FIELDS 
SEGY_CROSSLINE 
SEGY_INLINE 

Definition at line 55 of file SoVRSegyReader.h.

◆ TraceByteFormat

Field formats.

Enumerator
SEGY_INTEGER8_FORMAT 

Field format is integer 8 bits.

SEGY_INTEGER16_FORMAT 

Field format is integer 16 bits.

SEGY_INTEGER32_FORMAT 

Field format is integer 32 bits.

SEGY_IBM_FLOAT_FORMAT 

Field format is IBM float.

SEGY_IEEE_FLOAT_FORMAT 

Field format is IEEE float.

Definition at line 148 of file SoVRSegyReader.h.

Constructor & Destructor Documentation

◆ SoVRSegyTraceHeaderBytePosition()

SoVRSegyTraceHeaderBytePosition::SoVRSegyTraceHeaderBytePosition ( )

constructor

Member Function Documentation

◆ getByteFormat()

TraceByteFormat SoVRSegyTraceHeaderBytePosition::getByteFormat ( TraceAttribute  attr) const

◆ getByteLength()

uint8_t SoVRSegyTraceHeaderBytePosition::getByteLength ( TraceAttribute  attr) const

Gets the field length of a specific attribute within the trace header.

Valid values are 1, 2, and 4 (char, short, int/ieee/ibm, respectively).

◆ getBytePosition()

uint8_t SoVRSegyTraceHeaderBytePosition::getBytePosition ( TraceAttribute  attr) const

◆ getFieldValue()

int SoVRSegyTraceHeaderBytePosition::getFieldValue ( TraceAttribute  attr,
const SoVRSegyTraceIdHeader trHdr 
) const

Gets the value of a specific field.

The way the value is retrieved depends on its position and format. These parameters might be specified by setBytePosition() and setByteFormat() respectively.

◆ setByteFormat()

void SoVRSegyTraceHeaderBytePosition::setByteFormat ( TraceAttribute  attr,
TraceByteFormat  format 
)

Sets/Gets the field format of a specific attribute within the trace header.

The default format for all the fields is either SEGY_INTEGER16_FORMAT or SEGY_INTEGER32_FORMAT, see the class SoVRSegyTraceIdHeader below. For instance calling setByteFormat(TraceAttribute::SEGY_SX, SEGY_IEEE_FLOAT_FORMAT) means that the attribute source coordinate X should be coded as a IEEE float.

◆ setBytePosition()

void SoVRSegyTraceHeaderBytePosition::setBytePosition ( TraceAttribute  attr,
uint8_t  position 
)

Sets/Gets the byte position of a specific attribute within the trace header.

For instance calling setBytePosition(TraceAttribute::SEGY_SX, 71) means that the attribute source coordinate X should be retreived at from the byte position 71 (instead of 73 by default).


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