OpenZGY/C++ API and Internals (ALPHA)
Access seismic data stored in ZGY format.
Public Member Functions | Public Attributes | List of all members
InternalZGY::OffsetHeaderV2Access Class Reference
Inheritance diagram for InternalZGY::OffsetHeaderV2Access:
InternalZGY::OffsetHeaderAccess InternalZGY::IOffsetHeaderAccess InternalZGY::IHeaderAccess

Public Member Functions

virtual podbytes_t podbytes () const override
 
virtual void read (const std::shared_ptr< FileADT > &file, std::int64_t offset) override
 
virtual void byteswap () override
 
virtual void calculate (const std::shared_ptr< IInfoHeaderAccess > &ih) override
 
virtual std::int64_t infoff () const override
 
virtual std::int64_t stroff () const override
 
virtual std::int64_t alphalupoff () const override
 
virtual std::int64_t bricklupoff () const override
 
virtual std::int64_t histoff () const override
 
virtual std::int64_t infsize () const override
 
virtual std::int64_t histsize () const override
 
virtual std::int64_t alphalupsize () const override
 
virtual std::int64_t bricklupsize () const override
 

Public Attributes

std::int64_t _derived_infoff
 
std::int64_t _derived_stroff
 
std::int64_t _derived_alphalupoff
 
std::int64_t _derived_bricklupoff
 
std::int64_t _derived_histoff
 
std::int64_t _derived_infsize
 
std::int64_t _derived_strsize
 
std::int64_t _derived_histsize
 
std::int64_t _derived_alphalupsize
 
std::int64_t _derived_bricklupsize
 

Additional Inherited Members

- Public Types inherited from InternalZGY::IHeaderAccess
typedef std::vector< std::uint8_t > podbytes_t
 

Member Function Documentation

◆ calculate()

void InternalZGY::OffsetHeaderV2Access::calculate ( const std::shared_ptr< IInfoHeaderAccess > &  ih)
overridevirtual

Calculate offsets and sizes for the various headers and tables. Some information requires the InfoHeader to be already known. If it isn't we will just calculate as much as we can.

In general the size of a header as written to file might be larger than the size that the header expects to unpack. This allows adding more data fields at the end of the header. Older readers will just unpack the fields they know about.

For ZGY V2 and V3 this is moot, as all the offsets are implicit with all the headers written sequentially. So the size needs to match exactly or the headers following this will be corrupt.

Implements InternalZGY::IOffsetHeaderAccess.


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