| OpendTect 8.0

Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | Static Protected Member Functions | Protected Attributes | List of all members
PreStack::ProcessManager Class Reference
PreStackProcessing

Orgainizes a number of PreStack::Processors into a chain which can be processed. More...

`#include <prestackprocessor.h>`

Inheritance diagram for PreStack::ProcessManager:
[legend]

## Public Member Functions
| ProcessManager (OD::GeomSystem)
| ~ProcessManager ()
void | addProcessor (Processor *)
uiString | errMsg () const
void | fillPar (IOPar &) const
OD::GeomSystem | getGeomSystem () const
BinID | getInputStepout () const
| Only after prepareWork.
ConstRefMan< Gather > | getOutput () const
DataPackID | getOutputID () const
Processor * | getProcessor (int)
const Processor * | getProcessor (int) const
int | indexOf (const Processor *) const
bool | needsPreStackInput () const
void | notifyChange ()
int | nrProcessors () const
bool | prepareWork ()
bool | process ()
void | removeAllProcessors ()
void | removeProcessor (int)
bool | reset (bool force=true)
| Call when you are about to process new data.
void | setInput (const BinID &, const Gather *)
void | setInput (const BinID &, Gather *)
void | setInput (const BinID &relbid, DataPackID)
void | setModel (const BinID &, const ElasticModel *)
void | swapProcessors (int, int)
bool | usePar (const IOPar &)
virtual bool | wantsInput (const BinID &relbid) const
| Only after prepareWork.
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 ()

## Static Public Member Functions
static const char * | sKeyCDPRange ()
static const char * | sKeyInputData ()
static const char * | sKeyLineKey ()
static const char * | sKeyOutputData ()
static const char * | sKeySetup ()
Static Public Member Functions inherited from CallBacker
static void | createReceiverForCurrentThread ()
static void | removeReceiverForCurrentThread ()

## Public Attributes
Notifier< ProcessManager > | setupChange

## Static Protected Member Functions
static const char * | sKeyNrProcessors ()

## Protected Attributes
uiString | errmsg_
OD::GeomSystem | gs_
ObjectSet< Processor > | processors_

## Detailed Description

Orgainizes a number of PreStack::Processors into a chain which can be processed.

Support for processing prestack gathers is done by a PreStack::ProcessManager. The PreStack::ProcessManager has a chain of PreStack::Processor which are run in sequence.

Example:

PreStack::ProcessManager processmanager( OD::Geom3D );
auto* agc = new PreStack::AGC;
agc->setWindow( Interval<float>( -120, 120 ) );
processmanager.addProcessor( agc );
processmanager.reset();
//Not really necessary since the manager has not been used before
const BinID stepout = processmanager.getInputStepout();
BinID relbid;
for ( relbid.inl()=-stepout.inl(); relbid.inl()<=stepout.inl();
relbid.inl()++ )
{
for ( relbid.crl()=-stepout.crl(); relbid.crl()<=stepout.crl();
relbid.crl()++ )
{
if ( !processor.wantsInput(relbid) )
continue;
const BinID inputbid( relbid*BinID(SI().inlStep(),SI().crlStep()) );
const DataPackID dpid = getDataPackFromSomewhere( inputbid );
if ( dpid==DataPack::cNoID() )
return error;
processmanager.setInput( relbid, dpid );
}
}
if ( !processmanager.process() )
return error;
DataPackID result = processmanager.getOutput();
BinID
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition binid.h:19
BinID::inl
IdxType & inl()
Definition binid.h:29
BinID::crl
IdxType & crl()
Definition binid.h:33
DataPack::cNoID
static DataPackID cNoID()
Definition datapack.h:116
IntegerID< od_int32 >
Interval
Interval of values.
Definition ranges.h:112
PreStack::AGC
Processor for PreStack AGC.
Definition prestackagc.h:23
PreStack::AGC::setWindow
void setWindow(const Interval< float > &)
PreStack::ProcessManager
Orgainizes a number of PreStack::Processors into a chain which can be processed.
Definition prestackprocessor.h:144
OD::Geom3D
@ Geom3D
Definition commontypes.h:37

<>

## Constructor & Destructor Documentation

## ◆ ProcessManager()

PreStack::ProcessManager::ProcessManager | ( | OD::GeomSystem |  | ) |

## ◆ ~ProcessManager()

PreStack::ProcessManager::~ProcessManager | ( |  | ) |

## Member Function Documentation

## ◆ addProcessor()

void PreStack::ProcessManager::addProcessor | ( | Processor * |  | ) |

## ◆ errMsg()

uiString PreStack::ProcessManager::errMsg | ( |  | ) | const
| inline

## ◆ fillPar()

void PreStack::ProcessManager::fillPar | ( | IOPar & |  | ) | const

## ◆ getGeomSystem()

OD::GeomSystem PreStack::ProcessManager::getGeomSystem | ( |  | ) | const
| inline

## ◆ getInputStepout()

BinID PreStack::ProcessManager::getInputStepout | ( |  | ) | const

Only after prepareWork.

## ◆ getOutput()

ConstRefMan< Gather > PreStack::ProcessManager::getOutput | ( |  | ) | const

## ◆ getOutputID()

DataPackID PreStack::ProcessManager::getOutputID | ( |  | ) | const

## ◆ getProcessor() [1/2]

Processor * PreStack::ProcessManager::getProcessor | ( | int |  | ) |

## ◆ getProcessor() [2/2]

const Processor * PreStack::ProcessManager::getProcessor | ( | int |  | ) | const

## ◆ indexOf()

int PreStack::ProcessManager::indexOf | ( | const Processor * |  | ) | const

## ◆ needsPreStackInput()

bool PreStack::ProcessManager::needsPreStackInput | ( |  | ) | const

## ◆ notifyChange()

void PreStack::ProcessManager::notifyChange | ( |  | ) |
| inline

## ◆ nrProcessors()

int PreStack::ProcessManager::nrProcessors | ( |  | ) | const

## ◆ prepareWork()

bool PreStack::ProcessManager::prepareWork | ( |  | ) |

## ◆ process()

bool PreStack::ProcessManager::process | ( |  | ) |

## ◆ removeAllProcessors()

void PreStack::ProcessManager::removeAllProcessors | ( |  | ) |

## ◆ removeProcessor()

void PreStack::ProcessManager::removeProcessor | ( | int |  | ) |

## ◆ reset()

bool PreStack::ProcessManager::reset | ( | bool | force = true | ) |

Call when you are about to process new data.

## ◆ setInput() [1/3]

void PreStack::ProcessManager::setInput | ( | const BinID & | ,
|  | const Gather * | )

## ◆ setInput() [2/3]

void PreStack::ProcessManager::setInput | ( | const BinID & | ,
|  | Gather * | )

## ◆ setInput() [3/3]

void PreStack::ProcessManager::setInput | ( | const BinID & | relbid,
|  | DataPackID | )

## ◆ setModel()

void PreStack::ProcessManager::setModel | ( | const BinID & | ,
|  | const ElasticModel * | )

## ◆ sKeyCDPRange()

static const char * PreStack::ProcessManager::sKeyCDPRange | ( |  | ) |
| inline static

## ◆ sKeyInputData()

static const char * PreStack::ProcessManager::sKeyInputData | ( |  | ) |
| inline static

## ◆ sKeyLineKey()

static const char * PreStack::ProcessManager::sKeyLineKey | ( |  | ) |
| inline static

## ◆ sKeyNrProcessors()

static const char * PreStack::ProcessManager::sKeyNrProcessors | ( |  | ) |
| inline static protected

## ◆ sKeyOutputData()

static const char * PreStack::ProcessManager::sKeyOutputData | ( |  | ) |
| inline static

## ◆ sKeySetup()

static const char * PreStack::ProcessManager::sKeySetup | ( |  | ) |
| inline static

## ◆ swapProcessors()

void PreStack::ProcessManager::swapProcessors | ( | int | ,
|  | int | )

## ◆ usePar()

bool PreStack::ProcessManager::usePar | ( | const IOPar & |  | ) |

## ◆ wantsInput()

virtual bool PreStack::ProcessManager::wantsInput | ( | const BinID & | relbid | ) | const
| virtual

Only after prepareWork.

## Member Data Documentation

## ◆ errmsg_

uiString PreStack::ProcessManager::errmsg_
| protected

## ◆ gs_

OD::GeomSystem PreStack::ProcessManager::gs_
| protected

## ◆ processors_

ObjectSet<Processor> PreStack::ProcessManager::processors_
| protected

## ◆ setupChange

Notifier<ProcessManager> PreStack::ProcessManager::setupChange

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