OpendTect  6.6
volprochorinterfiller.h
Go to the documentation of this file.
1 #pragma once
2 
3 /*+
4 ________________________________________________________________________
5 
6  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
7  Author: Y.C. Liu
8  Date: April 2007
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "volumeprocessingmod.h"
15 #include "volprocstep.h"
16 
17 class BinID;
18 namespace EM { class EMObject; class Horizon; }
19 
20 namespace VolProc
21 {
22 
31 mExpClass(VolumeProcessing) HorInterFiller : public Step
33 public:
35  HorInterFiller, "HorInterFiller",
36  tr("Horizon-based painter - Simple") )
37 
38  ~HorInterFiller();
40 
41  bool isOK() const;
42 
43  bool needsInput() const { return false; }
44  bool isInputPrevStep() const { return true; }
45 
46  bool setTopHorizon(const MultiID*);
47  const MultiID* getTopHorizonID() const;
48 
49  bool setBottomHorizon(const MultiID*);
50  const MultiID* getBottomHorizonID() const;
51 
52  float getTopValue() const;
53  void setTopValue(float);
54 
55  bool usesGradient() const;
56  void useGradient(bool);
58 
59  float getBottomValue() const;
60  void setBottomValue(float);
61 
62  float getGradient() const;
63  void setGradient(float);
64 
65  void fillPar(IOPar&) const;
66  bool usePar(const IOPar&);
67 
68  void releaseData();
69  bool canInputAndOutputBeSame() const { return true; }
70  bool needsFullVolume() const { return false;}
71  bool canHandle2D() const { return true; }
72 
73  /* mDeprecated (this function will be protected virtual after 6.0) */
75  const StepInterval<int>&) const;
76 
77  virtual bool areSamplesIndependent() const { return true; }
78 
79 protected:
80  bool prefersBinIDWise() const { return true; }
81  bool prepareComp(int) { return true; }
82  bool computeBinID(const BinID&, int);
83 
84  static const char* sKeyTopHorID() { return "Top horizon"; }
85  static const char* sKeyBotHorID() { return "Bottom horizon"; }
86  static const char* sKeyTopValue() { return "Top Value"; }
87  static const char* sKeyBotValue() { return "Bottom Value"; }
88  static const char* sKeyGradient() { return "Gradient"; }
89  static const char* sKeyUseGradient() { return "Use Gradient"; }
90 
91 
93 
94  float topvalue_;
95  float bottomvalue_;
99  float gradient_;
100 };
101 
102 } // namespace VolProc
103 
VolProc::HorInterFiller::usegradient_
bool usegradient_
Definition: volprochorinterfiller.h:98
TrcKeySampling
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:35
VolProc::HorInterFiller::getBottomValue
float getBottomValue() const
VolProc::HorInterFiller::canHandle2D
bool canHandle2D() const
Definition: volprochorinterfiller.h:71
VolProc
Adapter for a VolProc chain to external attribute calculation.
Definition: seisdatapackwriter.h:24
VolProc::HorInterFiller::areSamplesIndependent
virtual bool areSamplesIndependent() const
Definition: volprochorinterfiller.h:77
VolProc::HorInterFiller::loadHorizon
EM::Horizon * loadHorizon(const MultiID &) const
VolProc::HorInterFiller::bottomvalue_
float bottomvalue_
Definition: volprochorinterfiller.h:95
VolProc::HorInterFiller::usesGradient
bool usesGradient() const
VolProc::HorInterFiller::getGradient
float getGradient() const
od_int64
#define od_int64
Definition: plftypes.h:35
VolProc::HorInterFiller::tophorizon_
EM::Horizon * tophorizon_
Definition: volprochorinterfiller.h:96
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
VolProc::HorInterFiller::extraMemoryUsage
od_int64 extraMemoryUsage(OutputSlotID, const TrcKeySampling &, const StepInterval< int > &) const
VolProc::HorInterFiller::sKeyBotValue
static const char * sKeyBotValue()
Definition: volprochorinterfiller.h:87
VolProc::HorInterFiller::isOK
bool isOK() const
VolProc::HorInterFiller::sKeyUseGradient
static const char * sKeyUseGradient()
Definition: volprochorinterfiller.h:89
VolProc::HorInterFiller::sKeyBotHorID
static const char * sKeyBotHorID()
Definition: volprochorinterfiller.h:85
VolProc::HorInterFiller::setGradient
void setGradient(float)
sKey::Horizon
FixedString Horizon()
Definition: keystrs.h:77
EM
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: bulk2dhorizonscanner.h:26
VolProc::HorInterFiller::setBottomValue
void setBottomValue(float)
VolProc::HorInterFiller::setBottomHorizon
bool setBottomHorizon(const MultiID *)
VolProc::HorInterFiller::needsInput
bool needsInput() const
Definition: volprochorinterfiller.h:43
VolProc::HorInterFiller::topvalue_
float topvalue_
Definition: volprochorinterfiller.h:94
VolProc::HorInterFiller::bottomhorizon_
EM::Horizon * bottomhorizon_
Definition: volprochorinterfiller.h:97
VolProc::HorInterFiller::getTopValue
float getTopValue() const
BinID
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:31
StepInterval< int >
VolProc::HorInterFiller::setTopValue
void setTopValue(float)
VolProc::HorInterFiller::prefersBinIDWise
bool prefersBinIDWise() const
Definition: volprochorinterfiller.h:80
VolProc::HorInterFiller::getTopHorizonID
const MultiID * getTopHorizonID() const
EM::Horizon
Horizon Surface.
Definition: emhorizon.h:47
VolProc::HorInterFiller::usePar
bool usePar(const IOPar &)
VolProc::HorInterFiller::fillPar
void fillPar(IOPar &) const
VolProc::HorInterFiller::sKeyTopHorID
static const char * sKeyTopHorID()
Definition: volprochorinterfiller.h:84
VolProc::HorInterFiller::HorInterFiller
HorInterFiller()
VolProc::Step
An algorithm/calculation/transformation that takes one scalar volume as input, processes it,...
Definition: volprocstep.h:42
VolProc::HorInterFiller::gradient_
float gradient_
Definition: volprochorinterfiller.h:99
MultiID
Compound key consisting of ints.
Definition: multiid.h:24
VolProc::HorInterFiller::needsFullVolume
bool needsFullVolume() const
Definition: volprochorinterfiller.h:70
VolProc::HorInterFiller::setTopHorizon
bool setTopHorizon(const MultiID *)
VolProc::HorInterFiller::mODTextTranslationClass
mODTextTranslationClass(HorInterFiller)
VolProc::HorInterFiller
Fills a volume with values.
Definition: volprochorinterfiller.h:32
VolProc::HorInterFiller::sKeyTopValue
static const char * sKeyTopValue()
Definition: volprochorinterfiller.h:86
volprocstep.h
VolProc::HorInterFiller::mDefaultFactoryInstantiation
mDefaultFactoryInstantiation(VolProc::Step, HorInterFiller, "HorInterFiller", tr("Horizon-based painter - Simple")) ~HorInterFiller()
VolProc::HorInterFiller::useGradient
void useGradient(bool)
If false, bottom value will be used.
VolProc::HorInterFiller::prepareComp
bool prepareComp(int)
Definition: volprochorinterfiller.h:81
VolProc::Step::OutputSlotID
int OutputSlotID
Definition: volprocstep.h:46
VolProc::HorInterFiller::isInputPrevStep
bool isInputPrevStep() const
Definition: volprochorinterfiller.h:44
VolProc::HorInterFiller::getBottomHorizonID
const MultiID * getBottomHorizonID() const
VolProc::HorInterFiller::releaseData
void releaseData()
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
VolProc::HorInterFiller::computeBinID
bool computeBinID(const BinID &, int)
VolProc::HorInterFiller::sKeyGradient
static const char * sKeyGradient()
Definition: volprochorinterfiller.h:88
VolProc::HorInterFiller::canInputAndOutputBeSame
bool canInputAndOutputBeSame() const
Definition: volprochorinterfiller.h:69

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