OpendTect-6_4  6.4
shiftattrib.h
Go to the documentation of this file.
1 #ifndef shiftattrib_h
2 #define shiftattrib_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Kristofer Tingdahl
9  Date: 07-10-1999
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "attributesmod.h"
16 #include "attribprovider.h"
17 #include "binid.h"
18 
19 namespace Attrib
20 {
21 
41 {
42 public:
43  static void initClass();
44  Shift(Desc&);
45 
46  static const char* attribName() { return "Shift"; }
47  static const char* posStr() { return "pos"; }
48  static const char* timeStr() { return "time"; }
49  static const char* steeringStr() { return "steering"; }
50  void initSteering() { stdPrepSteering(stepout_); }
51 
52  void prepPriorToBoundsCalc();
53 
54  virtual bool isSingleTrace() const
55  { return !stepout_.inl() && !stepout_.crl(); }
56 
57 protected:
58  ~Shift() {}
59  static Provider* createInstance(Desc&);
60  static void updateDesc(Desc&);
61  void init();
62 
64  { return false; }
65 
66  bool getInputOutput(int inp,TypeSet<int>& res) const;
67  bool getInputData(const BinID&,int zintv);
68  bool computeData(const DataHolder&,
69  const BinID& relpos,
70  int z0,int nrsamples,
71  int threadid) const;
72 
73  const BinID* reqStepout(int input,int output) const;
74  const Interval<float>* reqZMargin(int input,int output) const;
75  const Interval<float>* desZMargin(int input,int output) const;
76 
78  float time_;
79  bool dosteer_;
80 
84  int dataidx_;
85  int steeridx_;
86 
89 };
90 
91 } // namespace Attrib
92 
93 
94 #endif
static const char * attribName()
Definition: shiftattrib.h:46
#define mExpClass(module)
Definition: commondefs.h:160
int steeridx_
Definition: shiftattrib.h:85
static const char * steeringStr()
Definition: shiftattrib.h:49
Shift Attribute Shift takes the input at a specified position and outputs it at other relative positi...
Definition: shiftattrib.h:40
float time_
Definition: shiftattrib.h:78
~Shift()
Definition: shiftattrib.h:58
Interval< float > interval_
Definition: shiftattrib.h:82
bool init()
void initSteering()
Definition: shiftattrib.h:50
BinID stepout_
Definition: shiftattrib.h:81
FixedString Attributes()
Definition: keystrs.h:40
const DataHolder * inputdata_
Definition: shiftattrib.h:87
static const char * posStr()
Definition: shiftattrib.h:47
bool dosteer_
Definition: shiftattrib.h:79
BinID pos_
Definition: shiftattrib.h:77
Description of an attribute in an Attrib::DescSet. Each attribute has a name (e.g. "Similarity"), a user reference (e.g. "My similarity"), and at least one output. In addition, it may have parameters and inputs. If it has multiple outputs, only one of the outputs are selected.
Definition: attribdesc.h:89
const DataHolder * steeringdata_
Definition: shiftattrib.h:88
Holds the attribute data.
Definition: attribdataholder.h:43
bool allowParallelComputation() const
Definition: shiftattrib.h:63
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:30
int dataidx_
Definition: shiftattrib.h:84
virtual bool isSingleTrace() const
Definition: shiftattrib.h:54
Provides the actual output to ...
Definition: attribprovider.h:44
Interval< float > desinterval_
Definition: shiftattrib.h:83
static const char * timeStr()
Definition: shiftattrib.h:48
static void initClass()
Semblance Attribute.
Definition: attribdataholder.h:25

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