OpendTect-6_4  6.4
volprochorinterfiller.h
Go to the documentation of this file.
1 #ifndef volprochorinterfiller_h
2 #define volprochorinterfiller_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Y.C. Liu
9  Date: April 2007
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "volumeprocessingmod.h"
16 #include "volprocstep.h"
17 
18 class BinID;
19 namespace EM { class EMObject; class Horizon; }
20 
21 namespace VolProc
22 {
23 
32 mExpClass(VolumeProcessing) HorInterFiller : public Step
34 public:
36  HorInterFiller, "HorInterFiller",
37  tr("Horizon-based painter - Simple") )
38 
39  ~HorInterFiller();
41 
42  bool isOK() const;
43 
44  bool needsInput() const { return false; }
45  bool isInputPrevStep() const { return true; }
46 
47  bool setTopHorizon(const MultiID*);
48  const MultiID* getTopHorizonID() const;
49 
50  bool setBottomHorizon(const MultiID*);
51  const MultiID* getBottomHorizonID() const;
52 
53  float getTopValue() const;
54  void setTopValue(float);
55 
56  bool usesGradient() const;
57  void useGradient(bool);
59 
60  float getBottomValue() const;
61  void setBottomValue(float);
62 
63  float getGradient() const;
64  void setGradient(float);
65 
66  void fillPar(IOPar&) const;
67  bool usePar(const IOPar&);
68 
69  void releaseData();
70  bool canInputAndOutputBeSame() const { return true; }
71  bool needsFullVolume() const { return false;}
72  bool canHandle2D() const { return true; }
73 
74  /* mDeprecated (this function will be protected virtual after 6.0) */
75  od_int64 extraMemoryUsage(OutputSlotID,const TrcKeySampling&,
76  const StepInterval<int>&) const;
77 
78  virtual bool areSamplesIndependent() const { return true; }
79 
80 protected:
81  bool prefersBinIDWise() const { return true; }
82  bool prepareComp(int) { return true; }
83  bool computeBinID(const BinID&, int);
84 
85  static const char* sKeyTopHorID() { return "Top horizon"; }
86  static const char* sKeyBotHorID() { return "Bottom horizon"; }
87  static const char* sKeyTopValue() { return "Top Value"; }
88  static const char* sKeyBotValue() { return "Bottom Value"; }
89  static const char* sKeyGradient() { return "Gradient"; }
90  static const char* sKeyUseGradient() { return "Use Gradient"; }
91 
92 
93  EM::Horizon* loadHorizon(const MultiID&) const;
94 
95  float topvalue_;
96  float bottomvalue_;
100  float gradient_;
101 };
102 
103 } // namespace VolProc
104 
105 #endif
#define mExpClass(module)
Definition: commondefs.h:160
EM::Horizon * tophorizon_
Definition: volprochorinterfiller.h:97
float topvalue_
Definition: volprochorinterfiller.h:95
bool needsFullVolume() const
Definition: volprochorinterfiller.h:71
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
bool usegradient_
Definition: volprochorinterfiller.h:99
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:188
#define od_int64
Definition: plftypes.h:36
float bottomvalue_
Definition: volprochorinterfiller.h:96
static const char * sKeyBotHorID()
Definition: volprochorinterfiller.h:86
#define mDefaultFactoryInstantiation(baseclss, clss, keywrd, usernm)
Definition: factory.h:289
bool canHandle2D() const
Definition: volprochorinterfiller.h:72
static const char * sKeyTopHorID()
Definition: volprochorinterfiller.h:85
void getGradient(const X &x, const Y &y, int sz, int firstx, int firsty, RT *gradptr=0, RT *interceptptr=0)
Definition: simpnumer.h:264
bool canInputAndOutputBeSame() const
Definition: volprochorinterfiller.h:70
Fills a volume with values.
Definition: volprochorinterfiller.h:32
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
static const char * sKeyTopValue()
Definition: volprochorinterfiller.h:87
Adapter for a VolProc chain to external attribute calculation.
Definition: seisdatapackwriter.h:25
int OutputSlotID
Definition: volprocstep.h:47
float gradient_
Definition: volprochorinterfiller.h:100
FixedString Horizon()
Definition: keystrs.h:72
virtual bool areSamplesIndependent() const
Definition: volprochorinterfiller.h:78
bool prepareComp(int)
Definition: volprochorinterfiller.h:82
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:175
bool prefersBinIDWise() const
Definition: volprochorinterfiller.h:81
bool needsInput() const
Definition: volprochorinterfiller.h:44
An algorithm/calculation/transformation that takes one scalar volume as input, processes it...
Definition: volprocstep.h:42
EM::Horizon * bottomhorizon_
Definition: volprochorinterfiller.h:98
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:30
Earth Model objects like horizons, faults, fault-sticks and bodies.
Definition: embody.h:25
bool isInputPrevStep() const
Definition: volprochorinterfiller.h:45
static const char * sKeyGradient()
Definition: volprochorinterfiller.h:89
static const char * sKeyBotValue()
Definition: volprochorinterfiller.h:88
Compound key consisting of ints.
Definition: multiid.h:25
Horizon Surface.
Definition: emhorizon.h:47
static const char * sKeyUseGradient()
Definition: volprochorinterfiller.h:90

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