provides the actual output to ... More...
Public Member Functions | |
| virtual bool | isOK () const |
| const Desc & | getDesc () const |
| Desc & | getDesc () |
| const DataHolder * | getData (const BinID &relpos=BinID(0, 0), int idx=0) |
| const DataHolder * | getDataDontCompute (const BinID &relpos) const |
| int | nrOutputs () const |
| void | enableOutput (int output, bool yn=true) |
| bool | isOutputEnabled (int output) const |
| void | setOutputInterestSize (bool preserve=false) |
| void | enableAllOutputs (bool yn=true) |
| virtual void | getCompNames (BufferStringSet &) const |
| virtual void | setReqBufStepout (const BinID &, bool wait=false) |
| virtual void | setDesBufStepout (const BinID &, bool wait=false) |
| const BinID & | getReqBufStepout () const |
| const BinID & | getDesBufStepout () const |
| void | setDesiredVolume (const CubeSampling &) |
| const CubeSampling * | getDesiredVolume () const |
| void | resetDesiredVolume () |
| void | setPossibleVolume (const CubeSampling &) |
| virtual bool | getPossibleVolume (int outp, CubeSampling &) |
| const CubeSampling * | getPossibleVolume () const |
| int | getTotalNrPos (bool) |
| void | setCurLineKey (const char *linename) |
| virtual void | adjust2DLineStoredVolume () |
| virtual int | moveToNextTrace (BinID startpos=BinID(-1,-1), bool firstcheck=false) |
| void | computeNewStartPos (BinID &) |
| int | alignInputs (ObjectSet< Provider > &) |
| int | comparePosAndAlign (Provider *, bool, Provider *, bool, bool) |
| void | resetMoved () |
| void | resetZIntervals () |
| virtual const SeisTrcInfo * | getCurrentTrcInfo () const |
| BinID | getCurrentPosition () const |
| virtual bool | setCurrentPosition (const BinID &) |
| void | updateCurrentInfo () |
| virtual bool | needStoredInput () const |
| void | addLocalCompZIntervals (const TypeSet< Interval< int > > &) |
| const TypeSet< Interval< int > > & | localCompZIntervals () const |
| void | updateInputReqs (int input=-1) |
| virtual void | updateStorageReqs (bool all=false) |
| void | setUseSC () |
| void | setSelData (const Seis::SelData *) |
| void | setExtraZ (const Interval< float > &) |
| void | setNeedInterpol (bool) |
| void | setExactZ (const TypeSet< float > &) |
| void | computeRefStep () |
| void | setRefStep (float step) |
| float | getRefStep () const |
| virtual BinID | getStepoutStep () const |
| virtual float | getMaxDistBetwTrcs () const |
| ObjectSet< Provider > & | getInputs () |
| BinID | getTrcInfoBid () const |
| const char * | errMsg () const |
| virtual void | initSteering () |
| virtual void | initSteering (const BinID &) |
| virtual bool | prepPriorToOutputSetup () |
| virtual void | prepPriorToBoundsCalc () |
| virtual void | prepareForComputeData () |
| virtual void | fillDataCubesWithTrc (DataCubes *) const |
| virtual void | setRdmPaths (TypeSet< BinID > *truepath, TypeSet< BinID > *snappedpath) |
| For directional attributes. | |
Static Public Member Functions | |
| static Provider * | create (Desc &, BufferString &) |
| static const char * | prepare (Desc &) |
Protected Member Functions | |
| Provider (Desc &) | |
| virtual bool | checkInpAndParsAtStart () |
| virtual SeisMSCProvider * | getMSCProvider () const |
| virtual bool | getInputOutput (int input, TypeSet< int > &) const |
| virtual bool | getInputData (const BinID &relpos, int idx) |
| virtual bool | computeData (const DataHolder &output, const BinID &relpos, int t0, int nrsamples) const |
| virtual bool | computeData (const DataHolder &output, const BinID &relpos, int t0, int nrsamples, int threadidx) const |
| int | getDataIndex (int input) const |
| void | fillInputRangesArray (Array2DImpl< Interval< int > > &, int, const Interval< int > &) |
| virtual bool | allowParallelComputation () const |
| virtual bool | setNrThreads (int idx) |
| virtual int | minTaskSize () const |
| virtual bool | finalizeCalculation (bool scs) |
| DataHolder * | getDataHolder (const BinID &relpos) |
| void | removeDataHolder (const BinID &relpos) |
| void | setInput (int input, Provider *) |
| void | addParent (Provider *prov) |
| virtual BinDataDesc | getOutputFormat (int output) const |
| virtual bool | doNotReUseDH () const |
| bool | computeDesInputCube (int inp, int out, CubeSampling &, bool usestepout=true) const |
| void | setUsedMultTimes () |
| bool | isUsedMultTimes () |
| bool | isNew2DLine () const |
| virtual const BinID * | desStepout (int input, int output) const |
| virtual const BinID * | reqStepout (int input, int output) const |
| virtual const Interval< float > * | desZMargin (int input, int output) const |
| virtual const Interval< float > * | reqZMargin (int input, int output) const |
| virtual const Interval< int > * | desZSampMargin (int input, int output) const |
| virtual const Interval< int > * | reqZSampMargin (int input, int output) const |
| virtual bool | getZStepStoredData (float &step) const |
| float | getInterpolInputValue (const DataHolder &, int inputidx, float zval) const |
| float | getInterpolInputValue (const DataHolder &, int inputidx, float sample, int z0) const |
| float | getInputValue (const DataHolder &, int inputidx, int sampleidx, int z0) const |
| void | setOutputValue (const DataHolder &output, int outputidx, int sampleidx, int z0, float val) const |
| float | getExtraZFromSampPos (float) const |
| float | getExtraZFromSampInterval (int, int) const |
| bool | zIsTime () const |
| float | zFactor () const |
| float | dipFactor () const |
| float | inldist () const |
| float | crldist () const |
| float | maxSecureDip () const |
Static Protected Member Functions | |
| static Provider * | internalCreate (Desc &, ObjectSet< Provider > &, bool &issame, BufferString &) |
Protected Attributes | |
| ObjectSet< Provider > | inputs_ |
| ObjectSet< Provider > | parents_ |
| Desc & | desc_ |
| TypeSet< int > | outputinterest_ |
| BinID | desbufferstepout_ |
| BinID | reqbufferstepout_ |
| CubeSampling * | desiredvolume_ |
| CubeSampling * | possiblevolume_ |
| TypeSet< Interval< int > > | localcomputezintervals_ |
| ObjectSet< Provider > | allexistingprov_ |
| TypeSet< float > | exactz_ |
| ProviderTask * | providertask_ |
| DataHolderLineBuffer * | linebuffer_ |
| BinID | currentbid_ |
| int | prevtrcnr_ |
| LineKey | curlinekey_ |
| const Seis::SelData * | seldata_ |
| Interval< float > | extraz_ |
| const SeisTrcInfo * | curtrcinfo_ |
| BinID | trcinfobid_ |
| bool | useshortcuts_ |
| float | refstep_ |
| bool | alreadymoved_ |
| bool | isusedmulttimes_ |
| bool | needinterp_ |
| BufferString | errmsg_ |
Private Member Functions | |
| mRefCountImpl (Provider) | |
Friends | |
| class | ProviderTask |
provides the actual output to ...
| Attrib::Provider::Provider | ( | Desc & | ) | [protected] |
| void Attrib::Provider::addParent | ( | Provider * | prov | ) | [inline, protected] |
| virtual void Attrib::Provider::adjust2DLineStoredVolume | ( | ) | [virtual] |
Reimplemented in Attrib::StorageProvider.
| virtual bool Attrib::Provider::allowParallelComputation | ( | ) | const [inline, protected, virtual] |
Reimplemented in Attrib::StorageProvider.
| virtual bool Attrib::Provider::checkInpAndParsAtStart | ( | ) | [protected, virtual] |
Should be used for check _after_ inputs are set, for extra checks at other time use isOK()
Reimplemented in Attrib::StorageProvider.
| virtual bool Attrib::Provider::computeData | ( | const DataHolder & | output, | |
| const BinID & | relpos, | |||
| int | t0, | |||
| int | nrsamples, | |||
| int | threadidx | |||
| ) | const [protected, virtual] |
The system will use the algorithm specified in this function to compute the attribute's outputs. The results will be stored as different series in the DataHolder output.
| threadid | thread identifier that may be handy when using multiple threads. |
Reimplemented in Attrib::StorageProvider.
| virtual bool Attrib::Provider::computeData | ( | const DataHolder & | output, | |
| const BinID & | relpos, | |||
| int | t0, | |||
| int | nrsamples | |||
| ) | const [inline, protected, virtual] |
| bool Attrib::Provider::computeDesInputCube | ( | int | inp, | |
| int | out, | |||
| CubeSampling & | , | |||
| bool | usestepout = true | |||
| ) | const [protected] |
The system uses the margin and stepout requirements to compute the ideal desired volume for each input
| void Attrib::Provider::computeNewStartPos | ( | BinID & | ) |
| void Attrib::Provider::computeRefStep | ( | ) |
If an attribute uses as inputs stored cubes with a different z step the smallest one will be taken as reference step
| static Provider* Attrib::Provider::create | ( | Desc & | , | |
| BufferString & | ||||
| ) | [static] |
Also creates all inputs, the input's inputs, and so on
| float Attrib::Provider::crldist | ( | ) | const [protected] |
| virtual const BinID* Attrib::Provider::desStepout | ( | int | input, | |
| int | output | |||
| ) | const [protected, virtual] |
The system will try to supply the attribute with the desired stepout, but will not take the desired stepout into account when computing the volume that can be computed.
| virtual const Interval<float>* Attrib::Provider::desZMargin | ( | int | input, | |
| int | output | |||
| ) | const [protected, virtual] |
The gate is specified in the depth-unit of the survey (e.g. seconds, feet or meters), and is in addition to the gate specified in desZSampMargin. The system will try to supply the attribute with the desired gate, but will not take the desired gate into account when computing the volume that can be computed.
| virtual const Interval<int>* Attrib::Provider::desZSampMargin | ( | int | input, | |
| int | output | |||
| ) | const [protected, virtual] |
The gate is specified in the trace samples, and is in addition to the gate specified in desZMargin. The system will try to supply the attribute with the desired gate, but will not take the desired gate into account when computing the volume that can be computed.
| float Attrib::Provider::dipFactor | ( | ) | const [inline, protected] |
| virtual bool Attrib::Provider::doNotReUseDH | ( | ) | const [inline, protected, virtual] |
| void Attrib::Provider::enableAllOutputs | ( | bool | yn = true |
) |
| void Attrib::Provider::enableOutput | ( | int | output, | |
| bool | yn = true | |||
| ) |
| const char* Attrib::Provider::errMsg | ( | ) | const |
| virtual void Attrib::Provider::fillDataCubesWithTrc | ( | DataCubes * | ) | const [inline, virtual] |
Reimplemented in Attrib::StorageProvider.
| void Attrib::Provider::fillInputRangesArray | ( | Array2DImpl< Interval< int > > & | , | |
| int | , | |||
| const Interval< int > & | ||||
| ) | [protected] |
| virtual bool Attrib::Provider::finalizeCalculation | ( | bool | scs | ) | [inline, protected, virtual] |
Called one all computeData have returned.
| scs | is true if all computeData were successful. |
| virtual void Attrib::Provider::getCompNames | ( | BufferStringSet & | ) | const [virtual] |
| BinID Attrib::Provider::getCurrentPosition | ( | ) | const |
| virtual const SeisTrcInfo* Attrib::Provider::getCurrentTrcInfo | ( | ) | const [inline, virtual] |
| const DataHolder* Attrib::Provider::getData | ( | const BinID & | relpos = BinID(0, 0), |
|
| int | idx = 0 | |||
| ) |
| const DataHolder* Attrib::Provider::getDataDontCompute | ( | const BinID & | relpos | ) | const |
| DataHolder* Attrib::Provider::getDataHolder | ( | const BinID & | relpos | ) | [protected] |
| int Attrib::Provider::getDataIndex | ( | int | input | ) | const [protected] |
Gets the index of the serie needed in the input DataHolder
| const BinID& Attrib::Provider::getDesBufStepout | ( | ) | const [inline] |
| const Desc& Attrib::Provider::getDesc | ( | ) | const |
| Desc& Attrib::Provider::getDesc | ( | ) |
| const CubeSampling* Attrib::Provider::getDesiredVolume | ( | ) | const [inline] |
| float Attrib::Provider::getExtraZFromSampInterval | ( | int | , | |
| int | ||||
| ) | const [protected] |
| float Attrib::Provider::getExtraZFromSampPos | ( | float | ) | const [protected] |
| virtual bool Attrib::Provider::getInputData | ( | const BinID & | relpos, | |
| int | idx | |||
| ) | [protected, virtual] |
Gets all imput data, including data for which a stepout is required
| virtual bool Attrib::Provider::getInputOutput | ( | int | input, | |
| TypeSet< int > & | ||||
| ) | const [protected, virtual] |
Specifies the outputs needed for calculation among all those provided by the input data; very usefull when steering used as input data
| float Attrib::Provider::getInputValue | ( | const DataHolder & | , | |
| int | inputidx, | |||
| int | sampleidx, | |||
| int | z0 | |||
| ) | const [protected] |
| float Attrib::Provider::getInterpolInputValue | ( | const DataHolder & | , | |
| int | inputidx, | |||
| float | zval | |||
| ) | const [protected] |
| float Attrib::Provider::getInterpolInputValue | ( | const DataHolder & | , | |
| int | inputidx, | |||
| float | sample, | |||
| int | z0 | |||
| ) | const [protected] |
| virtual float Attrib::Provider::getMaxDistBetwTrcs | ( | ) | const [virtual] |
Reimplemented in Attrib::StorageProvider.
| virtual SeisMSCProvider* Attrib::Provider::getMSCProvider | ( | ) | const [protected, virtual] |
Reimplemented in Attrib::StorageProvider.
| virtual BinDataDesc Attrib::Provider::getOutputFormat | ( | int | output | ) | const [protected, virtual] |
Reimplemented in Attrib::StorageProvider.
| const CubeSampling* Attrib::Provider::getPossibleVolume | ( | ) | const [inline] |
| virtual bool Attrib::Provider::getPossibleVolume | ( | int | outp, | |
| CubeSampling & | ||||
| ) | [virtual] |
Reimplemented in Attrib::StorageProvider.
| float Attrib::Provider::getRefStep | ( | ) | const |
| const BinID& Attrib::Provider::getReqBufStepout | ( | ) | const [inline] |
| virtual BinID Attrib::Provider::getStepoutStep | ( | ) | const [virtual] |
Reimplemented in Attrib::StorageProvider.
| int Attrib::Provider::getTotalNrPos | ( | bool | ) |
| BinID Attrib::Provider::getTrcInfoBid | ( | ) | const [inline] |
| virtual bool Attrib::Provider::getZStepStoredData | ( | float & | step | ) | const [inline, protected, virtual] |
Reimplemented in Attrib::StorageProvider.
| virtual void Attrib::Provider::initSteering | ( | ) | [inline, virtual] |
| virtual void Attrib::Provider::initSteering | ( | const BinID & | ) | [inline, virtual] |
| float Attrib::Provider::inldist | ( | ) | const [protected] |
| static Provider* Attrib::Provider::internalCreate | ( | Desc & | , | |
| ObjectSet< Provider > & | , | |||
| bool & | issame, | |||
| BufferString & | ||||
| ) | [static, protected] |
Creates the provider needed and all its input providers
| bool Attrib::Provider::isNew2DLine | ( | ) | const [inline, protected] |
| virtual bool Attrib::Provider::isOK | ( | ) | const [virtual] |
| bool Attrib::Provider::isOutputEnabled | ( | int | output | ) | const |
| bool Attrib::Provider::isUsedMultTimes | ( | ) | [inline, protected] |
| float Attrib::Provider::maxSecureDip | ( | ) | const [inline, protected] |
| virtual int Attrib::Provider::minTaskSize | ( | ) | const [inline, protected, virtual] |
| virtual int Attrib::Provider::moveToNextTrace | ( | BinID | startpos = BinID(-1,-1), |
|
| bool | firstcheck = false | |||
| ) | [virtual] |
| -1 | something went wrong | |
| 0 | finished, no more positions | |
| 1 | arrived at new position |
Reimplemented in Attrib::StorageProvider.
| Attrib::Provider::mRefCountImpl | ( | Provider | ) | [private] |
| virtual bool Attrib::Provider::needStoredInput | ( | ) | const [virtual] |
Reimplemented in Attrib::StorageProvider.
| int Attrib::Provider::nrOutputs | ( | ) | const [inline] |
| static const char* Attrib::Provider::prepare | ( | Desc & | ) | [static] |
Must be called before getting inputs/outputs etc. from a Desc
| virtual void Attrib::Provider::prepareForComputeData | ( | ) | [virtual] |
Everything is known now.
| virtual void Attrib::Provider::prepPriorToBoundsCalc | ( | ) | [virtual] |
Z refstep is known now, this is meant to be used before possible- and desired- volumes are computed
| virtual bool Attrib::Provider::prepPriorToOutputSetup | ( | ) | [virtual] |
returns whether the outputs plan acquired from the parameter file has to be overruled
| void Attrib::Provider::removeDataHolder | ( | const BinID & | relpos | ) | [protected] |
| virtual const BinID* Attrib::Provider::reqStepout | ( | int | input, | |
| int | output | |||
| ) | const [protected, virtual] |
The system will supply the attribute with the required stepout, and use it to compute the volume that can be computed.
| virtual const Interval<float>* Attrib::Provider::reqZMargin | ( | int | input, | |
| int | output | |||
| ) | const [protected, virtual] |
| virtual const Interval<int>* Attrib::Provider::reqZSampMargin | ( | int | input, | |
| int | output | |||
| ) | const [protected, virtual] |
The gate is specified in the trace samples, and is in addition to the gate specified in reqZMargin. The system will supply the attribute with the required gate, and use it to compute the volume that can be computed.
| void Attrib::Provider::resetDesiredVolume | ( | ) |
| void Attrib::Provider::resetMoved | ( | ) |
| void Attrib::Provider::resetZIntervals | ( | ) |
| void Attrib::Provider::setCurLineKey | ( | const char * | linename | ) |
| virtual bool Attrib::Provider::setCurrentPosition | ( | const BinID & | ) | [virtual] |
| virtual void Attrib::Provider::setDesBufStepout | ( | const BinID & | , | |
| bool | wait = false | |||
| ) | [virtual] |
Reimplemented in Attrib::StorageProvider.
| void Attrib::Provider::setDesiredVolume | ( | const CubeSampling & | ) |
The desired volume is the ideal volume required by the user
| void Attrib::Provider::setExactZ | ( | const TypeSet< float > & | ) |
| void Attrib::Provider::setExtraZ | ( | const Interval< float > & | ) |
| void Attrib::Provider::setInput | ( | int | input, | |
| Provider * | ||||
| ) | [protected] |
| void Attrib::Provider::setNeedInterpol | ( | bool | ) |
| virtual bool Attrib::Provider::setNrThreads | ( | int | idx | ) | [inline, protected, virtual] |
| void Attrib::Provider::setOutputInterestSize | ( | bool | preserve = false |
) |
| void Attrib::Provider::setOutputValue | ( | const DataHolder & | output, | |
| int | outputidx, | |||
| int | sampleidx, | |||
| int | z0, | |||
| float | val | |||
| ) | const [protected] |
| void Attrib::Provider::setPossibleVolume | ( | const CubeSampling & | ) |
The possible volume is the volume that can really be computed taking care of all margins and stepouts
| virtual void Attrib::Provider::setRdmPaths | ( | TypeSet< BinID > * | truepath, | |
| TypeSet< BinID > * | snappedpath | |||
| ) | [virtual] |
For directional attributes.
| void Attrib::Provider::setRefStep | ( | float | step | ) |
| virtual void Attrib::Provider::setReqBufStepout | ( | const BinID & | , | |
| bool | wait = false | |||
| ) | [virtual] |
Reimplemented in Attrib::StorageProvider.
| void Attrib::Provider::setSelData | ( | const Seis::SelData * | ) |
| void Attrib::Provider::setUsedMultTimes | ( | ) | [protected] |
The same provider can be used multiple times which allows the attribute to be computed only once
| void Attrib::Provider::setUseSC | ( | ) | [inline] |
| void Attrib::Provider::updateCurrentInfo | ( | ) |
| void Attrib::Provider::updateInputReqs | ( | int | input = -1 |
) |
| virtual void Attrib::Provider::updateStorageReqs | ( | bool | all = false |
) | [virtual] |
Reimplemented in Attrib::StorageProvider.
| float Attrib::Provider::zFactor | ( | ) | const [inline, protected] |
| bool Attrib::Provider::zIsTime | ( | ) | const [protected] |
friend class ProviderTask [friend] |
ObjectSet<Provider> Attrib::Provider::allexistingprov_ [protected] |
bool Attrib::Provider::alreadymoved_ [protected] |
LineKey Attrib::Provider::curlinekey_ [protected] |
BinID Attrib::Provider::currentbid_ [protected] |
const SeisTrcInfo* Attrib::Provider::curtrcinfo_ [protected] |
BinID Attrib::Provider::desbufferstepout_ [protected] |
Desc& Attrib::Provider::desc_ [protected] |
CubeSampling* Attrib::Provider::desiredvolume_ [protected] |
BufferString Attrib::Provider::errmsg_ [protected] |
TypeSet<float> Attrib::Provider::exactz_ [protected] |
Interval<float> Attrib::Provider::extraz_ [protected] |
ObjectSet<Provider> Attrib::Provider::inputs_ [protected] |
bool Attrib::Provider::isusedmulttimes_ [protected] |
DataHolderLineBuffer* Attrib::Provider::linebuffer_ [protected] |
TypeSet< Interval<int> > Attrib::Provider::localcomputezintervals_ [protected] |
bool Attrib::Provider::needinterp_ [protected] |
TypeSet<int> Attrib::Provider::outputinterest_ [protected] |
ObjectSet<Provider> Attrib::Provider::parents_ [protected] |
CubeSampling* Attrib::Provider::possiblevolume_ [protected] |
int Attrib::Provider::prevtrcnr_ [protected] |
ProviderTask* Attrib::Provider::providertask_ [protected] |
float Attrib::Provider::refstep_ [protected] |
BinID Attrib::Provider::reqbufferstepout_ [protected] |
const Seis::SelData* Attrib::Provider::seldata_ [protected] |
BinID Attrib::Provider::trcinfobid_ [protected] |
bool Attrib::Provider::useshortcuts_ [protected] |
1.7.1