OpendTect-6_4  6.4
instantattrib.h
Go to the documentation of this file.
1 #ifndef instantattrib_h
2 #define instantattrib_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Nanne Hemstra
9  Date: May 2005
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 #include "attributesmod.h"
16 #include "attribprovider.h"
17 
18 namespace Attrib
19 {
20 
26 {
27 public:
28  static void initClass();
30 
31  static const char* attribName() { return "Instantaneous"; }
32  static const char* rotateAngle() { return "rotationangle"; }
33 
34 protected:
36  static Provider* createInstance(Desc&);
37  static void updateDesc(Desc&);
38 
39  bool getInputOutput(int in,TypeSet<int>& res) const;
40  bool getInputData(const BinID&, int);
41  bool computeData(const DataHolder&,const BinID& pos,
42  int t0,int nrsamples,
43  int threadid) const;
44 
45  const Interval<int>* reqZSampMargin(int,int) const;
46 
48  { return true; }
49 
54  int realidx_;
55  int imagidx_;
56  float rotangle_;
57 
58 private:
59  float calcAmplitude(int,int) const;
60  float calcPhase(int,int) const;
61  float calcFrequency(int,int) const;
62  float calcAmplitude1Der(int,int) const;
63  float calcAmplitude2Der(int,int) const;
64  float calcEnvWPhase(int,int) const;
65  float calcEnvWFreq(int,int) const;
66  float calcPhaseAccel(int,int) const;
67  float calcThinBed(int,int) const;
68  float calcBandWidth(int,int) const;
69  float calcQFactor(int,int) const;
70  float calcRotPhase(int,int,float angle) const;
71  float calcEnvWeighted(int,int,bool isphase) const;
72 };
73 
74 }; // namespace Attrib
75 
76 #endif
#define mExpClass(module)
Definition: commondefs.h:160
int realidx_
Definition: instantattrib.h:54
Interval< int > sampgate2_
Definition: instantattrib.h:51
FixedString Attributes()
Definition: keystrs.h:40
const DataHolder * realdata_
Definition: instantattrib.h:52
Instantaneous Attribute
Definition: instantattrib.h:25
Interval< int > sampgate1_
Definition: instantattrib.h:50
~Instantaneous()
Definition: instantattrib.h:35
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
Holds the attribute data.
Definition: attribdataholder.h:43
static const char * attribName()
Definition: instantattrib.h:31
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:30
const DataHolder * imagdata_
Definition: instantattrib.h:53
bool allowParallelComputation() const
Definition: instantattrib.h:47
float rotangle_
Definition: instantattrib.h:56
Provides the actual output to ...
Definition: attribprovider.h:44
static const char * rotateAngle()
Definition: instantattrib.h:32
static void initClass()
int imagidx_
Definition: instantattrib.h:55
Semblance Attribute.
Definition: attribdataholder.h:25

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