OpendTect  6.3
instantattrib.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: Nanne Hemstra
8  Date: May 2005
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "attributesmod.h"
14 #include "attribprovider.h"
15 
16 namespace Attrib
17 {
18 
24 {
25 public:
26  static void initClass();
28 
29  static const char* attribName() { return "Instantaneous"; }
30  static const char* rotateAngle() { return "rotationangle"; }
31 
32 protected:
34  static Provider* createInstance(Desc&);
35  static void updateDesc(Desc&);
36 
37  bool getInputOutput(int in,TypeSet<int>& res) const;
38  bool getInputData(const BinID&, int);
39  bool computeData(const DataHolder&,const BinID& pos,
40  int t0,int nrsamples,
41  int threadid) const;
42 
43  const Interval<int>* reqZSampMargin(int,int) const;
44 
46  { return true; }
47 
52  int realidx_;
53  int imagidx_;
54  float rotangle_;
55 
56 private:
57  float calcAmplitude(int,int) const;
58  float calcPhase(int,int) const;
59  float calcFrequency(int,int) const;
60  float calcAmplitude1Der(int,int) const;
61  float calcAmplitude2Der(int,int) const;
62  float calcEnvWPhase(int,int) const;
63  float calcEnvWFreq(int,int) const;
64  float calcPhaseAccel(int,int) const;
65  float calcThinBed(int,int) const;
66  float calcBandWidth(int,int) const;
67  float calcQFactor(int,int) const;
68  float calcRotPhase(int,int,float angle) const;
69  float calcEnvWeighted(int,int,bool isphase) const;
70 };
71 
72 }; // namespace Attrib
#define mExpClass(module)
Definition: commondefs.h:157
int realidx_
Definition: instantattrib.h:52
Interval< int > sampgate2_
Definition: instantattrib.h:49
FixedString Attributes()
Definition: keystrs.h:38
const DataHolder * realdata_
Definition: instantattrib.h:50
Instantaneous Attribute
Definition: instantattrib.h:23
Interval< int > sampgate1_
Definition: instantattrib.h:48
~Instantaneous()
Definition: instantattrib.h:33
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:87
Holds the attribute data.
Definition: attribdataholder.h:39
static const char * attribName()
Definition: instantattrib.h:29
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:28
const DataHolder * imagdata_
Definition: instantattrib.h:51
bool allowParallelComputation() const
Definition: instantattrib.h:45
float rotangle_
Definition: instantattrib.h:54
Provides the actual output to ...
Definition: attribprovider.h:40
static const char * rotateAngle()
Definition: instantattrib.h:30
static void initClass()
int imagidx_
Definition: instantattrib.h:53
Semblance Attribute.
Definition: attribdataholder.h:21

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