1 #ifndef prestackprocessor_h 2 #define prestackprocessor_h 16 #include "prestackprocessingmod.h" 41 virtual bool reset(
bool force=
true);
43 virtual const BinID& getInputStepout()
const;
44 virtual bool wantsInput(
const BinID& relbid)
const;
47 const BinID& getOutputStepout()
const;
48 virtual bool setOutputInterest(
const BinID& relbid,
bool);
49 bool getOutputInterest(
const BinID& relbid)
const;
52 virtual bool prepareWork();
63 int nrOffsets()
const;
81 virtual Gather* createOutputArray(
const Gather& input)
const;
82 static int getRelBidOffset(
const BinID& relbid,
83 const BinID& stepout);
147 int nrProcessors()
const;
149 const Processor* getProcessor(
int)
const;
150 bool needsPreStackInput()
const;
154 void removeProcessor(
int);
155 void swapProcessors(
int,
int);
158 void removeAllProcessors();
164 bool reset(
bool force=
true);
167 BinID getInputStepout()
const;
169 virtual bool wantsInput(
const BinID& relbid)
const;
184 static const char*
sKeySetup(){
return "Processing Setup"; }
199 #define mPSProcAddStepoutStep( array, arrtype, oldstepout, newstepout ) \ 201 arrtype arrcopy( array ); \ 204 for ( int idx=-newstepout.inl(); idx<=newstepout.inl(); idx++ ) \ 206 for ( int idy=-newstepout.crl(); idy<=newstepout.crl(); idy++ ) \ 208 const BinID curpos( idx, idy ); \ 210 if ( idy<-oldstepout.crl() || idy>oldstepout.crl() || \ 211 idx<-oldstepout.inl() || idx>oldstepout.inl() ) \ 217 const int oldoffset=getRelBidOffset(curpos,oldstepout);\ 218 array += arrcopy[oldoffset]; \ #define mExpClass(module)
Definition: commondefs.h:160
To be able to send and/or receive CallBacks, inherit from this class.
Definition: callback.h:272
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
PreStack gather.
Definition: prestackgather.h:36
Processes PreStack data at one cdp location. The algorithm is implemented in subclasses, and can be created by the PreStack::PF() factory.
Definition: prestackprocessor.h:36
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:188
#define od_int64
Definition: plftypes.h:36
Notifier< ProcessManager > setupChange
Definition: prestackprocessor.h:161
Definition: synthseis.h:36
virtual od_int64 nrIterations() const
Definition: prestackprocessor.h:64
virtual uiString errMsg() const
Definition: prestackprocessor.h:53
static const uiString & emptyString()
Definition: uistring.h:109
ObjectSet< Gather > inputs_
Definition: prestackprocessor.h:90
Definition: uistring.h:89
ObjectSet< T >::size_type indexOf(const ObjectSet< T > &os, const S &val)
Locate object in set.
Definition: objectset.h:169
static const char * sKeyInputData()
Definition: prestackprocessor.h:186
int ID
Definition: datapack.h:38
Generalization of a task that can be run in parallel.
Definition: paralleltask.h:66
virtual bool usesPreStackInput() const
Definition: prestackprocessor.h:74
Definition: callback.h:254
Set of pointers to objects.
Definition: commontypes.h:32
virtual void adjustPossibleCompArea(TrcKeySampling &)
Definition: prestackprocessor.h:75
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:47
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:27
BoolTypeSet outputinterest_
Definition: prestackprocessor.h:88
static const char * sKeyNrProcessors()
Definition: prestackprocessor.h:192
uiString errmsg_
Definition: prestackprocessor.h:195
static const char * sKeySetup()
Definition: prestackprocessor.h:184
static const char * sKeyLineKey()
Definition: prestackprocessor.h:183
uiString errMsg() const
Definition: prestackprocessor.h:180
virtual bool mustHaveUserInput()
Definition: prestackprocessor.h:77
virtual void retainCurBID(const BinID &)
Definition: prestackprocessor.h:76
#define mDefineFactoryInClass(T, funcname)
Definition: factory.h:426
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:175
ObjectSet< Gather > outputs_
Definition: prestackprocessor.h:87
ObjectSet< Processor > processors_
Definition: prestackprocessor.h:194
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:30
BufferString errmsg_
Definition: horizontracker.h:119
void notifyChange()
Definition: prestackprocessor.h:160
static const char * sKeyCDPRange()
Definition: prestackprocessor.h:185
Orgainizes a number of PreStack::Processors into a chain which can be processed.
Definition: prestackprocessor.h:140
BinID outputstepout_
Definition: prestackprocessor.h:86
FixedString LineKey()
Definition: keystrs.h:82
static const char * sKeyOutputData()
Definition: prestackprocessor.h:187