OpendTect  6.6
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
PreStack::Processor Class Referenceabstract

Processes PreStack data at one cdp location. The algorithm is implemented in subclasses, and can be created by the PreStack::PF() factory. More...

Inheritance diagram for PreStack::Processor:
[legend]

Public Member Functions

virtual ~Processor ()
 
virtual void adjustPossibleCompArea (TrcKeySampling &)
 
virtual bool doWork (od_int64 start, od_int64 stop, int)=0
 
virtual uiString errMsg () const
 
virtual void fillPar (IOPar &) const =0
 
virtual const BinIDgetInputStepout () const
 
DataPack::ID getOutput (const BinID &relbid) const
 
bool getOutputInterest (const BinID &relbid) const
 
const BinIDgetOutputStepout () const
 
virtual bool mustHaveUserInput ()
 
virtual od_int64 nrIterations () const
 
int nrOffsets () const
 
virtual bool prepareWork ()
 
virtual bool reset (bool force=true)
 
virtual void retainCurBID (const BinID &)
 
void setInput (const BinID &relbid, DataPack::ID)
 
virtual bool setOutputInterest (const BinID &relbid, bool)
 
virtual bool usePar (const IOPar &)=0
 
virtual bool usesPreStackInput () const
 
virtual bool wantsInput (const BinID &relbid) const
 
- Public Member Functions inherited from ParallelTask
virtual ~ParallelTask ()
 
bool execute ()
 
virtual bool executeParallel (bool parallel)
 
int64_t nrDone () const
 May be -1, i.e. class does not report nrdone. More...
 
void setProgressMeter (ProgressMeter *)
 Must be called before execute() More...
 
int64_t totalNr () const
 
- Public Member Functions inherited from Task
virtual ~Task ()
 
virtual void controlWork (Control)
 
virtual void enableWorkControl (bool=true)
 Must be called before execute() More...
 
virtual uiRetVal errorWithDetails () const
 
virtual Control getState () const
 
virtual uiString uiMessage () const
 will be message() again in 7.x More...
 
virtual uiString uiNrDoneText () const
 will be nrDoneText() in 7.x More...
 
bool workControlEnabled () const
 
- Public Member Functions inherited from NamedCallBacker
 NamedCallBacker (const char *nm=0)
 
 NamedCallBacker (const NamedCallBacker &)
 
virtual Notifier< NamedCallBacker > & objectToBeDeleted () const
 
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. More...
 
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. More...
 
void stopReceivingNotifications () const
 
- 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 &)
 
virtual const name_typename () const
 
NamedObjectoperator= (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

 Processor (const char *nm)
 
virtual GathercreateOutputArray (const Gather &input) const
 
- Protected Member Functions inherited from ParallelTask
 ParallelTask (const char *nm=0)
 
 ParallelTask (const ParallelTask &)
 
void addToNrDone (int64_t increment)
 
int64_t calculateThreadSize (int64_t totalnr, int nrthreads, int thread) const
 
virtual int maxNrThreads () const
 
virtual int minThreadSize () const
 
void quickAddToNrDone (int64_t loopidx)
 
void resetNrDone ()
 
virtual bool stopAllOnFailure () const
 
- Protected Member Functions inherited from Task
 Task (const char *nm=nullptr)
 
virtual bool shouldContinue ()
 
- Protected Member Functions inherited from NamedCallBacker
void sendDelNotif () const
 

Static Protected Member Functions

static void freeArray (ObjectSet< Gather > &)
 
static int getRelBidOffset (const BinID &relbid, const BinID &stepout)
 

Protected Attributes

ObjectSet< Gatherinputs_
 
BoolTypeSet outputinterest_
 
ObjectSet< Gatheroutputs_
 
BinID outputstepout_
 
- Protected Attributes inherited from Task
Control control_
 
Threads::ConditionVarworkcontrolcondvar_
 
- Protected Attributes inherited from NamedCallBacker
Threads::Atomic< bool > delalreadytriggered_
 
Notifier< NamedCallBackerdelnotif_
 
- Protected Attributes inherited from NamedObject
BufferString name_
 

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 ParallelTask
static uiString sPosFinished ()
 
static uiString sTrcFinished ()
 
- Static Public Member Functions inherited from Task
static uiString stdNrDoneText ()
 
static uiString uiStdNrDoneText ()
 
- Static Public Member Functions inherited from CallBacker
static void createReceiverForCurrentThread ()
 
static void removeReceiverForCurrentThread ()
 

Detailed Description

Processes PreStack data at one cdp location. The algorithm is implemented in subclasses, and can be created by the PreStack::PF() factory.

<>

Constructor & Destructor Documentation

◆ ~Processor()

virtual PreStack::Processor::~Processor ( )
virtual

◆ Processor()

PreStack::Processor::Processor ( const char *  nm)
protected

Member Function Documentation

◆ adjustPossibleCompArea()

virtual void PreStack::Processor::adjustPossibleCompArea ( TrcKeySampling )
inlinevirtual

◆ createOutputArray()

virtual Gather* PreStack::Processor::createOutputArray ( const Gather input) const
protectedvirtual

◆ doWork()

virtual bool PreStack::Processor::doWork ( od_int64  start,
od_int64  stop,
int   
)
pure virtual

If nrIterations is not overridden, start and stop will refer to offsets that should be processed.

Implemented in PreStack::TrimStatics, PreStack::Stack, PreStack::Mute, PreStack::LateralStack, PreStack::AngleMute, and PreStack::AGC.

◆ errMsg()

virtual uiString PreStack::Processor::errMsg ( ) const
inlinevirtual

◆ fillPar()

virtual void PreStack::Processor::fillPar ( IOPar ) const
pure virtual

◆ freeArray()

static void PreStack::Processor::freeArray ( ObjectSet< Gather > &  )
staticprotected

◆ getInputStepout()

virtual const BinID& PreStack::Processor::getInputStepout ( ) const
virtual

Reimplemented in PreStack::LateralStack.

◆ getOutput()

DataPack::ID PreStack::Processor::getOutput ( const BinID relbid) const

◆ getOutputInterest()

bool PreStack::Processor::getOutputInterest ( const BinID relbid) const

◆ getOutputStepout()

const BinID& PreStack::Processor::getOutputStepout ( ) const

◆ getRelBidOffset()

static int PreStack::Processor::getRelBidOffset ( const BinID relbid,
const BinID stepout 
)
staticprotected

◆ mustHaveUserInput()

virtual bool PreStack::Processor::mustHaveUserInput ( )
inlinevirtual

Reimplemented in PreStack::Mute.

◆ nrIterations()

virtual od_int64 PreStack::Processor::nrIterations ( ) const
inlinevirtual

If algorithms cannot be done in parallel with regards to offsets, override function and return 1. doWork() will then be called with start=stop=0 and you can do whatever you want in doWork. You can also return number of samples in gather and run it parallel vertically.

Implements ParallelTask.

Reimplemented in PreStack::TrimStatics, PreStack::Stack, PreStack::Mute, PreStack::LateralStack, and PreStack::AngleMute.

◆ nrOffsets()

int PreStack::Processor::nrOffsets ( ) const

◆ prepareWork()

virtual bool PreStack::Processor::prepareWork ( )
virtual

◆ reset()

virtual bool PreStack::Processor::reset ( bool  force = true)
virtual

Reimplemented in PreStack::LateralStack.

◆ retainCurBID()

virtual void PreStack::Processor::retainCurBID ( const BinID )
inlinevirtual

◆ setInput()

void PreStack::Processor::setInput ( const BinID relbid,
DataPack::ID   
)

◆ setOutputInterest()

virtual bool PreStack::Processor::setOutputInterest ( const BinID relbid,
bool   
)
virtual

Reimplemented in PreStack::LateralStack.

◆ usePar()

virtual bool PreStack::Processor::usePar ( const IOPar )
pure virtual

◆ usesPreStackInput()

virtual bool PreStack::Processor::usesPreStackInput ( ) const
inlinevirtual

◆ wantsInput()

virtual bool PreStack::Processor::wantsInput ( const BinID relbid) const
virtual

Reimplemented in PreStack::LateralStack.

Member Data Documentation

◆ inputs_

ObjectSet<Gather> PreStack::Processor::inputs_
protected

◆ outputinterest_

BoolTypeSet PreStack::Processor::outputinterest_
protected

◆ outputs_

ObjectSet<Gather> PreStack::Processor::outputs_
protected

◆ outputstepout_

BinID PreStack::Processor::outputstepout_
protected

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