OpendTect-6_4  6.4
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
CBVSWriter Class Reference

Writer for CBVS format. More...

Inheritance diagram for CBVSWriter:
[legend]

Public Member Functions

 CBVSWriter (od_ostream *, const CBVSInfo &, const PosAuxInfo *, CoordPol cp=InAux)
 
 CBVSWriter (od_ostream *, const CBVSWriter &, const CBVSInfo &)
 For usage in CBVS pack. More...
 
 ~CBVSWriter ()
 
unsigned long byteThreshold () const
 The default is unlimited. More...
 
void setByteThreshold (unsigned long n)
 
void forceLineStep (const BinID &stp)
 
void forceNrTrcsPerPos (int nr)
 
void forceTrailer (bool yn=true)
 
int put (void **, int offs=0)
 
int put (const TraceData &, int offs=0)
 
void close ()
 
void ciaoForNow ()
 
const CBVSInfo::SurvGeom & survGeom () const
 
const PosAuxInfoSelectionauxInfoSel ()
 
- Public Member Functions inherited from CBVSIO
 CBVSIO ()
 
virtual ~CBVSIO ()
 
bool failed () const
 
const char * errMsg () const
 
int nrComponents () const
 
const BinIDbinID () const
 
void setErrMsg (const char *s)
 

Protected Member Functions

void writeHdr (const CBVSInfo &)
 
void putAuxInfoSel (unsigned char *) const
 
void writeComps (const CBVSInfo &)
 
void writeGeom ()
 
void doClose (bool)
 
void getRealGeometry ()
 
bool writeTrailer ()
 

Protected Attributes

od_ostreamstrm_
 
unsigned long thrbytes_
 
int auxnrbytes_
 
bool input_rectnreg_
 
int * nrbytespersample_
 
BinID forcedlinestep_
 
bool forcetrailer_
 
- Protected Attributes inherited from CBVSIO
const char * errmsg_
 
int * cnrbytes_
 
int nrcomps_
 
bool strmclosed_
 
int nrxlines_
 
CoordPol coordpol_
 
TypeSet< Coordtrailercoords_
 
PosInfo::CubeData lds_
 
BinID curbinid_
 

Private Member Functions

void init (const CBVSInfo &)
 
void getBinID ()
 
void newSeg (bool)
 
bool writeAuxInfo ()
 

Private Attributes

od_stream::Pos geomsp_
 file offset of geometry data More...
 
int trcswritten_
 
BinID prevbinid_
 
bool file_lastinl_
 
int nrtrcsperposn_
 
int nrtrcsperposn_status_
 
int checknrtrcsperposn_
 
PosAuxInfoSelection auxinfosel_
 
CBVSInfo::SurvGeom survgeom_
 
const PosAuxInfoauxinfo_
 

Additional Inherited Members

- Public Types inherited from CBVSIO
enum  CoordPol { InAux =0, InTrailer =1, NotStored =2 }
 
- Static Public Attributes inherited from CBVSIO
static const int integersize
 
static const int version
 
static const int headstartbytes
 

Detailed Description

Writer for CBVS format.

Works on an ostream that will be deleted on destruction, or when finished.

For the inline/xline info, you have two choices: 1) if you know you have a fully rectangular and regular survey, you can set this in the SurvGeom. 2) if this is not the case, or you don't know whether this will be the case, you will have to provide the BinID in the PosAuxInfo.

Constructor & Destructor Documentation

CBVSWriter::CBVSWriter ( od_ostream ,
const CBVSInfo ,
const PosAuxInfo ,
CoordPol  cp = InAux 
)

If info.posauxinfo has a true, the PosAuxInfo cannot be null. The relevant field(s) should then be filled before the first put() of any position

CBVSWriter::CBVSWriter ( od_ostream ,
const CBVSWriter ,
const CBVSInfo  
)

For usage in CBVS pack.

CBVSWriter::~CBVSWriter ( )

Member Function Documentation

const PosAuxInfoSelection& CBVSWriter::auxInfoSel ( )
inline
unsigned long CBVSWriter::byteThreshold ( ) const
inline

The default is unlimited.

void CBVSWriter::ciaoForNow ( )
inline

closes as if final close but doesn't actually close stream. Makes result readable.

void CBVSWriter::close ( )
inlinevirtual

Implements CBVSIO.

void CBVSWriter::doClose ( bool  )
protected
void CBVSWriter::forceLineStep ( const BinID stp)
inline
void CBVSWriter::forceNrTrcsPerPos ( int  nr)
inline
void CBVSWriter::forceTrailer ( bool  yn = true)
inline
void CBVSWriter::getBinID ( )
private
void CBVSWriter::getRealGeometry ( )
protected
void CBVSWriter::init ( const CBVSInfo )
private
void CBVSWriter::newSeg ( bool  )
private
int CBVSWriter::put ( void **  ,
int  offs = 0 
)
int CBVSWriter::put ( const TraceData ,
int  offs = 0 
)

Expects a buffer for each component returns -1 = error, 0 = OK, 1=not written (threshold reached)

void CBVSWriter::putAuxInfoSel ( unsigned char *  ) const
protected
void CBVSWriter::setByteThreshold ( unsigned long  n)
inline
const CBVSInfo::SurvGeom& CBVSWriter::survGeom ( ) const
inline
bool CBVSWriter::writeAuxInfo ( )
private
void CBVSWriter::writeComps ( const CBVSInfo )
protected
void CBVSWriter::writeGeom ( )
protected
void CBVSWriter::writeHdr ( const CBVSInfo )
protected
bool CBVSWriter::writeTrailer ( )
protected

Member Data Documentation

const PosAuxInfo* CBVSWriter::auxinfo_
private
PosAuxInfoSelection CBVSWriter::auxinfosel_
private
int CBVSWriter::auxnrbytes_
protected
int CBVSWriter::checknrtrcsperposn_
private
bool CBVSWriter::file_lastinl_
private
BinID CBVSWriter::forcedlinestep_
protected
bool CBVSWriter::forcetrailer_
protected
od_stream::Pos CBVSWriter::geomsp_
private

file offset of geometry data

bool CBVSWriter::input_rectnreg_
protected
int* CBVSWriter::nrbytespersample_
protected
int CBVSWriter::nrtrcsperposn_
private
int CBVSWriter::nrtrcsperposn_status_
private
BinID CBVSWriter::prevbinid_
private
od_ostream& CBVSWriter::strm_
protected
CBVSInfo::SurvGeom CBVSWriter::survgeom_
private
unsigned long CBVSWriter::thrbytes_
protected
int CBVSWriter::trcswritten_
private

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B. V. 2019