| OpendTect 8.0

Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
Seis::SequentialReader Class Reference
Seis

`#include <seisparallelreader.h>`

Inheritance diagram for Seis::SequentialReader:
[legend]

## Public Member Functions
| SequentialReader (const IOObj &, const TrcKeyZSampling *=0, const TypeSet< int > *components=0)
| ~SequentialReader ()
ConstRefMan< RegularSeisDataPack > | getDataPack () const
bool | init ()
od_int64 | nrDone () const override
void | setComponents (const TypeSet< int > &compnrs)
void | setComponentScaler (const Scaler &, int compidx)
void | setDataChar (DataCharacteristics::UserType)
bool | setDataPack (RegularSeisDataPack &, od_ostream *strm=0)
bool | setOutputComponents (const TypeSet< int > &)
void | setScaler (Scaler *)
od_int64 | totalNr () const override
uiString | uiMessage () const override
uiString | uiNrDoneText () const override
Public Member Functions inherited from Executor
| Executor (const char *nm)
virtual | ~Executor ()
int | doStep () override
bool | execute () override
bool | go (od_ostream &s, bool isfirst=true, bool islast=true, int delaybtwnstepsinms=0)
bool | go (od_ostream *s=0, bool isfirst=true, bool islast=true, int delaybtwnstepsinms=0)
Public Member Functions inherited from SequentialTask
| SequentialTask (const char *nm=nullptr)
virtual | ~SequentialTask ()
bool | execute () override
Public Member Functions inherited from ReportingTask
| ReportingTask (const ReportingTask &)=delete
virtual | ~ReportingTask ()
void | getProgress (const ReportingTask &)
ReportingTask & | operator= (const ReportingTask &)=delete
void | setSimpleMeter (bool yn, int repperc)
int | simpleMeterStep () const
bool | useSimpleMeter () const
Public Member Functions inherited from Task
| Task (const Task &)=delete
virtual | ~Task ()
virtual void | controlWork (Control)
virtual void | enableWorkControl (bool=true)
| Must be called before execute()
virtual uiRetVal | errorWithDetails () const
virtual Control | getState () const
Task & | operator= (const Task &)=delete
bool | workControlEnabled () const
Public Member Functions inherited from NamedCallBacker
| NamedCallBacker (const char *nm=nullptr)
| NamedCallBacker (const NamedCallBacker &)=delete
| ~NamedCallBacker ()
virtual Notifier< NamedCallBacker > & | objectToBeDeleted () const
NamedCallBacker & | operator= (const NamedCallBacker &)=delete
bool | operator== (const NamedCallBacker &oth) const
bool | operator== (const NamedObject &oth) const
Public Member Functions inherited from CallBacker
| CallBacker ()
| CallBacker (const CallBacker &)
virtual | ~CallBacker ()
bool | attachCB (const NotifierAccess &, const CallBack &, bool onlyifnew=false) const
bool | attachCB (const NotifierAccess *notif, const CallBack &cb, bool onlyifnew=false) const
void | detachAllNotifiers () const
| Call from the destructor of your inherited object.
void | detachCB (const NotifierAccess &, const CallBack &) const
void | detachCB (const NotifierAccess *notif, const CallBack &cb) const
virtual bool | isCapsule () const
bool | isNotifierAttached (const NotifierAccess *) const
| Only for debugging purposes, don't use.
CallBacker & | operator= (const CallBacker &)=delete
void | stopReceivingNotifications () const
virtual CallBacker * | trueCaller ()
Public Member Functions inherited from NamedObject
| NamedObject (const char *nm=nullptr)
| NamedObject (const NamedObject &oth)
virtual | ~NamedObject ()
virtual BufferString | getName () const
bool | getNameFromPar (const IOPar &)
const name_type & | name () const override
NamedObject & | operator= (const NamedObject &)
bool | operator== (const NamedObject &oth) const
virtual void | setName (const char *nm)
Public Member Functions inherited from ObjectWithName
virtual | ~ObjectWithName ()
bool | hasName (const char *nm) const
bool | hasName (const name_type &nm) const
void | putNameInPar (IOPar &) const

## Protected Member Functions
virtual bool | goImpl (od_ostream *, bool, bool, int) override
virtual int | nextStep () override
bool | setOutputComponents ()
Protected Member Functions inherited from SequentialTask
virtual bool | doFinish (bool success, od_ostream *=nullptr)
virtual bool | doPrepare (od_ostream *=nullptr)
Protected Member Functions inherited from ReportingTask
| ReportingTask (const char *nm=nullptr)
void | incrementProgress ()
ProgressMeter * | progressMeter () const
void | reportProgressFinished ()
void | reportProgressStarted ()
void | resetProgress ()
void | setProgressMeter (ProgressMeter *) override
| Must be called before execute()
void | updateProgressMeter (bool forced=false, od_int64 *totalnr=0)
void | updateReportedName ()
Protected Member Functions inherited from Task
| Task (const char *nm=nullptr)
virtual bool | shouldContinue ()
Protected Member Functions inherited from NamedCallBacker
void | sendDelNotif () const

## Private Member Functions
void | adjustDPDescToScalers (const BinDataDesc &trcdesc)
bool | getTrcsPosForRead (int &desirednrpos, TypeSet< TrcKey > &) const
void | submitUdfWriterTasks ()

## Private Attributes
TypeSet< int > | components_
ObjectSet< Scaler > | compscalers_
DataCharacteristics | dc_
RefMan< RegularSeisDataPack > | dp_
StepInterval< float > | dpzsamp_
bool | initialized_ = false
IOObj * | ioobj_
bool | is2d_
uiString | msg_
bool | needresampling_ = true
od_int64 | nrdone_ = 0
TypeSet< int > | outcomponents_
int | queueid_
SeisTrcReader & | rdr_
TypeSet< float > | refnrs_
bool | samedatachar_ = false
Interval< int > | samprg_
Scaler * | scaler_ = nullptr
ObjectSummary * | seissummary_ = nullptr
TrcKeyZSampling | tkzs_
od_int64 | totalnr_ = 0
PosInfo::CubeDataIterator * | trcsiterator3d_ = nullptr
PosInfo::CubeData * | trcssampling_ = nullptr

## Additional Inherited Members
Public Types inherited from Task
enum | Control { Run , Pause , Stop }
Public Types inherited from ObjectWithName
typedef OD::String | name_type
Static Public Member Functions inherited from SequentialTask
static int | ErrorOccurred ()
static int | Finished ()
static int | MoreToDo ()
static int | WarningAvailable ()
Static Public Member Functions inherited from ReportingTask
static PtrMan< ProgressMeter > | getTextProgressMeter (od_ostream &, const IOPar *iop=nullptr)
static bool | needSimpleLogging (const IOPar &)
static const char * | sKeySimpleLogging ()
static const char * | sKeySimpleLoggingStep ()
Static Public Member Functions inherited from Task
static uiString | uiStdNrDoneText ()
Static Public Member Functions inherited from CallBacker
static void | createReceiverForCurrentThread ()
static void | removeReceiverForCurrentThread ()
Public Attributes inherited from Executor
Notifier< Executor > | poststep
| Only when MoreToDo will be returned.
Notifier< Executor > | prestep
Public Attributes inherited from ReportingTask
Notifier< ReportingTask > | progressUpdated
Protected Attributes inherited from Task
Control | control_ = Task::Run
Threads::ConditionVar * | workcontrolcondvar_ = nullptr
Protected Attributes inherited from NamedCallBacker
Threads::Atomic< bool > | delalreadytriggered_
Notifier< NamedCallBacker > | delnotif_
Protected Attributes inherited from NamedObject
BufferString | name_

## Detailed Description

Reads a 3D Seismic volume in parallel into a RegularSeisDataPack

Usage example: SequentialReader rdr( myiioobj ); // I want to read all rdr.setDataChar( DataCharacteristics:: ); // read in another format rdr.setScaler( myscaler ); // scale data to fit in required format if ( rdr.init() ) // something is not right rdr.execute();

<>

## Constructor & Destructor Documentation

## ◆ SequentialReader()

Seis::SequentialReader::SequentialReader | ( | const IOObj & | ,
|  | const TrcKeyZSampling * | = 0,
|  | const TypeSet< int > * | components = 0 )

For 2D data, pass line GeomID as lineNr in TrcKeySampling

## ◆ ~SequentialReader()

Seis::SequentialReader::~SequentialReader | ( |  | ) |

## Member Function Documentation

## ◆ adjustDPDescToScalers()

void Seis::SequentialReader::adjustDPDescToScalers | ( | const BinDataDesc & | trcdesc | ) |
| private

## ◆ getDataPack()

ConstRefMan< RegularSeisDataPack > Seis::SequentialReader::getDataPack | ( |  | ) | const

## ◆ getTrcsPosForRead()

bool Seis::SequentialReader::getTrcsPosForRead | ( | int & | desirednrpos,
|  | TypeSet< TrcKey > & | ) const
| private

## ◆ goImpl()

virtual bool Seis::SequentialReader::goImpl | ( | od_ostream * | ,
|  | bool | ,
|  | bool | ,
|  | int | )
| override protected virtual

Reimplemented from Executor.

## ◆ init()

bool Seis::SequentialReader::init | ( |  | ) |

## ◆ nextStep()

virtual int Seis::SequentialReader::nextStep | ( |  | ) |
| override protected virtual

Return values

  MoreToDo() | Not finished. Call me again.
  Finished() | Nothing more to do.
  ErrorOccurred() | Something went wrong.

Note
  if function returns a value greater than cMoreToDo(), it should be interpreted as cMoreToDo().

Implements SequentialTask.

## ◆ nrDone()

od_int64 Seis::SequentialReader::nrDone | ( |  | ) | const
| inline override virtual

Note
  nrDone is only used for displaying progress and will be compared to totalNr to show user how large part of the task that is finished.

Reimplemented from Task.

## ◆ setComponents()

void Seis::SequentialReader::setComponents | ( | const TypeSet< int > & | compnrs | ) |
| inline

## ◆ setComponentScaler()

void Seis::SequentialReader::setComponentScaler | ( | const Scaler & | ,
|  | int | compidx )

Will force the datapack to float

## ◆ setDataChar()

void Seis::SequentialReader::setDataChar | ( | DataCharacteristics::UserType |  | ) |

## ◆ setDataPack()

bool Seis::SequentialReader::setDataPack | ( | RegularSeisDataPack & | ,
|  | od_ostream * | strm = 0 )

No need for init if setDataPack is called Will allocate memory if not done already Scaler and sampling get forwarded to the reader DataChar is not forwarded

## ◆ setOutputComponents() [1/2]

bool Seis::SequentialReader::setOutputComponents | ( |  | ) |
| protected

## ◆ setOutputComponents() [2/2]

bool Seis::SequentialReader::setOutputComponents | ( | const TypeSet< int > & |  | ) |
| inline

## ◆ setScaler()

void Seis::SequentialReader::setScaler | ( | Scaler * |  | ) |

## ◆ submitUdfWriterTasks()

void Seis::SequentialReader::submitUdfWriterTasks | ( |  | ) |
| private

## ◆ totalNr()

od_int64 Seis::SequentialReader::totalNr | ( |  | ) | const
| inline override virtual

Reimplemented from Task.

## ◆ uiMessage()

uiString Seis::SequentialReader::uiMessage | ( |  | ) | const
| inline override virtual

Reimplemented from Task.

## ◆ uiNrDoneText()

uiString Seis::SequentialReader::uiNrDoneText | ( |  | ) | const
| override virtual

Reimplemented from Task.

## Member Data Documentation

## ◆ components_

TypeSet<int> Seis::SequentialReader::components_
| private

## ◆ compscalers_

ObjectSet<Scaler> Seis::SequentialReader::compscalers_
| private

## ◆ dc_

DataCharacteristics Seis::SequentialReader::dc_
| private

## ◆ dp_

RefMan<RegularSeisDataPack> Seis::SequentialReader::dp_
| private

## ◆ dpzsamp_

StepInterval<float> Seis::SequentialReader::dpzsamp_
| private

## ◆ initialized_

bool Seis::SequentialReader::initialized_ = false
| private

## ◆ ioobj_

IOObj* Seis::SequentialReader::ioobj_
| private

## ◆ is2d_

bool Seis::SequentialReader::is2d_
| private

## ◆ msg_

uiString Seis::SequentialReader::msg_
| private

## ◆ needresampling_

bool Seis::SequentialReader::needresampling_ = true
| private

## ◆ nrdone_

od_int64 Seis::SequentialReader::nrdone_ = 0
| private

## ◆ outcomponents_

TypeSet<int> Seis::SequentialReader::outcomponents_
| private

## ◆ queueid_

int Seis::SequentialReader::queueid_
| private

## ◆ rdr_

SeisTrcReader& Seis::SequentialReader::rdr_
| private

## ◆ refnrs_

TypeSet<float> Seis::SequentialReader::refnrs_
| private

## ◆ samedatachar_

bool Seis::SequentialReader::samedatachar_ = false
| private

## ◆ samprg_

Interval<int> Seis::SequentialReader::samprg_
| private

## ◆ scaler_

Scaler* Seis::SequentialReader::scaler_ = nullptr
| private

## ◆ seissummary_

ObjectSummary* Seis::SequentialReader::seissummary_ = nullptr
| private

## ◆ tkzs_

TrcKeyZSampling Seis::SequentialReader::tkzs_
| private

## ◆ totalnr_

od_int64 Seis::SequentialReader::totalnr_ = 0
| private

## ◆ trcsiterator3d_

PosInfo::CubeDataIterator* Seis::SequentialReader::trcsiterator3d_ = nullptr
| private

## ◆ trcssampling_

PosInfo::CubeData* Seis::SequentialReader::trcssampling_ = nullptr
| private

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