16 #include "volumeprocessingmod.h" 54 ID
getID()
const {
return id_; }
56 const Chain& getChain()
const;
57 virtual const char* userName()
const;
58 virtual void setUserName(
const char* nm);
61 virtual bool needsInput()
const = 0;
62 virtual int getNrInputs()
const;
63 virtual InputSlotID getInputSlotID(
int idx)
const;
64 virtual void getInputSlotName(InputSlotID,
69 virtual OutputSlotID getOutputSlotID(
int idx)
const;
70 bool validInputSlotID(InputSlotID)
const;
71 bool validOutputSlotID(OutputSlotID)
const;
82 virtual void setInput(InputSlotID,
91 int getOutputIdx(OutputSlotID)
const;
92 void enableOutput(OutputSlotID);
107 virtual Task* createTask();
114 virtual void releaseData();
147 void setHStep(
const BinID&);
149 void setInpNrComps(InputSlotID,
int);
150 void setOutputNrComps(
int);
152 int getNrInputComponents(InputSlotID)
const;
153 int getNrOutComponents()
const;
159 void setChain(
Chain&);
163 friend class BinIDWiseTask;
uiString errmsg_
Definition: volprocstep.h:142
#define mExpClass(module)
Definition: commondefs.h:160
RegularSeisDataPack * output_
Definition: volprocstep.h:157
is an interface where processes can report their progress.
Definition: progressmeter.h:21
virtual uiString errMsg() const
Definition: volprocstep.h:119
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:188
#define od_int64
Definition: plftypes.h:36
TypeSet< InputSlotID > inputslotids_
Definition: volprocstep.h:138
virtual bool prepareComp(int nrthreads)
Definition: volprocstep.h:128
static const uiString & emptyString()
Definition: uistring.h:109
SeisDataPack for 2D and 3D seismic data.
Definition: seisdatapack.h:28
Definition: uistring.h:89
int InputSlotID
Definition: volprocstep.h:46
static int cUndefSlotID()
Definition: volprocstep.h:49
virtual bool areSamplesIndependent() const
Definition: volprocstep.h:103
virtual mDeprecated od_int64 getProcTimeExtraMemory() const
Definition: volprocstep.h:174
StepInterval< int > zrg_
Definition: volprocstep.h:183
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:47
A chain of Steps that can be applied to a volume of scalars.
Definition: volprocchain.h:29
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:27
ObjectSet< const RegularSeisDataPack > inputs_
Definition: volprocstep.h:137
virtual bool computeBinID(const BinID &, int threadid)
Definition: volprocstep.h:127
Adapter for a VolProc chain to external attribute calculation.
Definition: seisdatapackwriter.h:25
#define mUdf(type)
Use this macro to get the undefined for simple types.
Definition: undefval.h:272
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
int OutputSlotID
Definition: volprocstep.h:47
int ID
Definition: volprocstep.h:45
static ID cUndefID()
Definition: volprocstep.h:48
#define mDefineFactoryInClass(T, funcname)
Definition: factory.h:426
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:175
virtual int getNrOutputs() const
Definition: volprocstep.h:68
virtual bool isInputPrevStep() const
Definition: volprocstep.h:66
executes the work for a single VolProc::Chain.
Definition: volprocchainexec.h:27
TypeSet< OutputSlotID > outputslotids_
Definition: volprocstep.h:144
#define od_uint64
Definition: plftypes.h:37
An algorithm/calculation/transformation that takes one scalar volume as input, processes it...
Definition: volprocstep.h:42
#define mDeprecated
Definition: plfdefs.h:233
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:40
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:30
Pos::GeomID ID
Definition: survgeom.h:44
virtual bool needReportProgress()
Definition: volprocstep.h:109
virtual bool prefersBinIDWise() const
Definition: volprocstep.h:126
virtual bool canHandle2D() const
Definition: volprocstep.h:96
virtual const VelocityDesc * getVelDesc() const
Definition: volprocstep.h:101
FixedString Chain()
Definition: keystrs.h:45
TrcKeySampling tks_
Definition: volprocstep.h:182
BufferString username_
Definition: volprocstep.h:140
virtual bool needsFullVolume() const
Definition: volprocstep.h:95
RegularSeisDataPack * getOutput()
Definition: volprocstep.h:99
virtual bool canInputAndOutputBeSame() const
Definition: volprocstep.h:94
Generalization of something (e.g. a computation) that needs to be done in multiple steps...
Definition: task.h:28
const RegularSeisDataPack * getOutput() const
Definition: volprocstep.h:98
virtual od_int64 extraMemoryUsage(OutputSlotID, const TrcKeySampling &, const StepInterval< int > &) const
Definition: volprocstep.h:133
ID getID() const
Definition: volprocstep.h:54
Chain * chain_
Definition: volprocstep.h:130
ID id_
Definition: volprocstep.h:141