OpendTect 8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Seis::DataGlueer Class Reference

Takes in 'small' tiles or blocks of (seismic) data and makes sure they are merged and written to storage. More...

#include <seisblocksdataglueer.h>

Public Types

enum  MergeMode { Average , Crop , Blend }
 

Public Member Functions

 DataGlueer (const TrcKeyZSampling &, SeisTrcWriter &, Geom::Point3D< float > overlap, MergeMode merge=Blend)
 SelData provides the envelope of possible samples.
 
 ~DataGlueer ()
 
uiRetVal addData (const TrcKey &, float, const Array2D< float > &)
 
uiRetVal addData (const TrcKey &, float, const Array3D< float > &)
 
uiRetVal finish ()
 Has to be called; check return value!
 
bool is2D () const
 
void setSteps (const TrcKey &ps, float zs)
 
void setSteps (int stp, float zs)
 
void setTracePositions (const PosInfo::CubeData *)
 

Protected Member Functions

void addPos (const TrcKey &, const Array2D< float > &, float)
 
void addPos (const TrcKey &, const Array3D< float > &, float)
 
void fillTrace (SeisTrc &, TraceValues &)
 
LineBuf * getBuf (int)
 
void initGeometry (const ArrayNDInfo &)
 
uiRetVal storeLineBuf (const LineBuf &)
 
uiRetVal storeReadyPositions (bool force=false)
 
StepInterval< int > trcNrRange (int lnr) const
 

Protected Attributes

const ArrayNDInfoarrinfo_ = nullptr
 
TrcKey curtrcky_ = TrcKey::udf()
 
int lastwrittenline_ = -1
 
PosInfo::CubeDatalcd_ = nullptr
 
ObjectSet< LineBuf > linebufs_
 
int linestep_ = 1
 
MergeMode mergemode_
 
Geom::Point3D< float > overlap_
 
SeisTrcWriterstorer_
 
TrcKeyZSampling tkzs_
 
int trcstep_ = 1
 
int trcsz_ = -1
 
ArrayND< float > * weights_ = nullptr
 
float zstep_
 

Detailed Description

Takes in 'small' tiles or blocks of (seismic) data and makes sure they are merged and written to storage.

Hard requirement is that the data you feed is sorted on inl/crl or GeomID/trcnr.

The TrcKey and Z you provide denote the START of the tile/blocklet, not the center!

<>

Member Enumeration Documentation

◆ MergeMode

Enumerator
Average 
Crop 
Blend 

Constructor & Destructor Documentation

◆ DataGlueer()

Seis::DataGlueer::DataGlueer ( const TrcKeyZSampling & ,
SeisTrcWriter & ,
Geom::Point3D< float > overlap,
MergeMode merge = Blend )

SelData provides the envelope of possible samples.

◆ ~DataGlueer()

Seis::DataGlueer::~DataGlueer ( )

Member Function Documentation

◆ addData() [1/2]

uiRetVal Seis::DataGlueer::addData ( const TrcKey & ,
float ,
const Array2D< float > &  )

◆ addData() [2/2]

uiRetVal Seis::DataGlueer::addData ( const TrcKey & ,
float ,
const Array3D< float > &  )

◆ addPos() [1/2]

void Seis::DataGlueer::addPos ( const TrcKey & ,
const Array2D< float > & ,
float  )
protected

◆ addPos() [2/2]

void Seis::DataGlueer::addPos ( const TrcKey & ,
const Array3D< float > & ,
float  )
protected

◆ fillTrace()

void Seis::DataGlueer::fillTrace ( SeisTrc & ,
TraceValues &  )
protected

◆ finish()

uiRetVal Seis::DataGlueer::finish ( )

Has to be called; check return value!

◆ getBuf()

LineBuf * Seis::DataGlueer::getBuf ( int )
protected

◆ initGeometry()

void Seis::DataGlueer::initGeometry ( const ArrayNDInfo & )
protected

◆ is2D()

bool Seis::DataGlueer::is2D ( ) const

◆ setSteps() [1/2]

void Seis::DataGlueer::setSteps ( const TrcKey & ps,
float zs )
inline

◆ setSteps() [2/2]

void Seis::DataGlueer::setSteps ( int stp,
float zs )
inline

◆ setTracePositions()

void Seis::DataGlueer::setTracePositions ( const PosInfo::CubeData * )

◆ storeLineBuf()

uiRetVal Seis::DataGlueer::storeLineBuf ( const LineBuf & )
protected

◆ storeReadyPositions()

uiRetVal Seis::DataGlueer::storeReadyPositions ( bool force = false)
protected

◆ trcNrRange()

StepInterval< int > Seis::DataGlueer::trcNrRange ( int lnr) const
protected

Member Data Documentation

◆ arrinfo_

const ArrayNDInfo* Seis::DataGlueer::arrinfo_ = nullptr
protected

◆ curtrcky_

TrcKey Seis::DataGlueer::curtrcky_ = TrcKey::udf()
protected

◆ lastwrittenline_

int Seis::DataGlueer::lastwrittenline_ = -1
protected

◆ lcd_

PosInfo::CubeData* Seis::DataGlueer::lcd_ = nullptr
protected

◆ linebufs_

ObjectSet<LineBuf> Seis::DataGlueer::linebufs_
protected

◆ linestep_

int Seis::DataGlueer::linestep_ = 1
protected

◆ mergemode_

MergeMode Seis::DataGlueer::mergemode_
protected

◆ overlap_

Geom::Point3D<float> Seis::DataGlueer::overlap_
protected

◆ storer_

SeisTrcWriter& Seis::DataGlueer::storer_
protected

◆ tkzs_

TrcKeyZSampling Seis::DataGlueer::tkzs_
protected

◆ trcstep_

int Seis::DataGlueer::trcstep_ = 1
protected

◆ trcsz_

int Seis::DataGlueer::trcsz_ = -1
protected

◆ weights_

ArrayND<float>* Seis::DataGlueer::weights_ = nullptr
protected

◆ zstep_

float Seis::DataGlueer::zstep_
protected

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