OpendTect-6_4  6.4
freqfilterattrib.h
Go to the documentation of this file.
1 #ifndef freqfilterattrib_h
2 #define freqfilterattrib_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Nanne Hemstra
9  Date: February 2003
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 -*/
14 
15 
16 #include "attributesmod.h"
17 #include "attribprovider.h"
18 #include "arrayndalgo.h"
19 #include "arrayndimpl.h"
20 #include <complex>
21 
22 
23 namespace Attrib
24 {
25 
44 public:
45  static void initClass();
46  FreqFilter(Desc&);
47 
48  static const char* attribName() { return "FreqFilter"; }
49  static const char* filtertypeStr() { return "type"; }
50  static const char* minfreqStr() { return "minfreq"; }
51  static const char* maxfreqStr() { return "maxfreq"; }
52  static const char* nrpolesStr() { return "nrpoles"; }
53  static const char* isfftfilterStr() { return "isfftfilter"; }
54  static const char* isfreqtaperStr() { return "isfreqtaper"; }
55  static const char* windowStr() { return "window"; }
56  static const char* fwindowStr() { return "fwindow"; }
57  static const char* paramvalStr() { return "paramval"; }
58  static const char* freqf1Str() { return "highfreqparamval"; }
59  static const char* freqf4Str() { return "lowfreqparamval"; }
60  static const char* filterTypeNamesStr(int);
61 
62 protected:
63  ~FreqFilter();
64  static Provider* createInstance(Desc&);
65  static void updateDesc(Desc&);
66 
67  bool getInputOutput(int input,TypeSet<int>& res) const;
68  bool getInputData(const BinID&, int idx);
69  bool computeData(const DataHolder&,const BinID& relpos,
70  int t0,int nrsamples,int threadid) const;
71  void butterWorthFilter(const DataHolder&, int, int);
72  void fftFilter(const DataHolder&, int, int);
73 
74  void setSz(int sz);
75 
76  const Interval<int>* desZSampMargin(int input,int output) const;
77 
79  float minfreq_;
80  float maxfreq_;
81  int nrpoles_;
83  int fftsz_;
84 
87  float variable_;
88  float freqf1_;
89  float freqf4_;
90 
92 
94 
97 
98  int realidx_;
99  int imagidx_;
100 };
101 
102 }; // namespace Attrib
103 
104 #endif
#define mExpClass(module)
Definition: commondefs.h:160
static const char * isfftfilterStr()
Definition: freqfilterattrib.h:53
#define mODTextTranslationClass(clss)
Definition: uistring.h:38
static const char * windowStr()
Definition: freqfilterattrib.h:55
Tapers the N-dimentional ArrayND with a windowFunction.
Definition: arrayndalgo.h:309
FixedString Attributes()
Definition: keystrs.h:40
ArrayNDWindow * window_
Definition: freqfilterattrib.h:85
int fftsz_
Definition: freqfilterattrib.h:83
const DataHolder * imdata_
Definition: freqfilterattrib.h:96
float minfreq_
Definition: freqfilterattrib.h:79
const DataHolder * redata_
Definition: freqfilterattrib.h:95
static const char * freqf1Str()
Definition: freqfilterattrib.h:58
int nrpoles_
Definition: freqfilterattrib.h:81
static const char * isfreqtaperStr()
Definition: freqfilterattrib.h:54
int imagidx_
Definition: freqfilterattrib.h:99
static const char * nrpolesStr()
Definition: freqfilterattrib.h:52
BufferString windowtype_
Definition: freqfilterattrib.h:86
int realidx_
Definition: freqfilterattrib.h:98
Array1DImpl< float_complex > signal_
Definition: freqfilterattrib.h:93
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
int filtertype_
Definition: freqfilterattrib.h:78
static const char * freqf4Str()
Definition: freqfilterattrib.h:59
static const char * maxfreqStr()
Definition: freqfilterattrib.h:51
float variable_
Definition: freqfilterattrib.h:87
float freqf1_
Definition: freqfilterattrib.h:88
Holds the attribute data.
Definition: attribdataholder.h:43
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:40
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:30
static const char * paramvalStr()
Definition: freqfilterattrib.h:57
Provides the actual output to ...
Definition: attribprovider.h:44
static const char * filtertypeStr()
Definition: freqfilterattrib.h:49
static const char * minfreqStr()
Definition: freqfilterattrib.h:50
static const char * fwindowStr()
Definition: freqfilterattrib.h:56
Interval< int > zmargin_
Definition: freqfilterattrib.h:91
float freqf4_
Definition: freqfilterattrib.h:89
bool isfftfilter_
Definition: freqfilterattrib.h:82
static const char * attribName()
Definition: freqfilterattrib.h:48
static void initClass()
Semblance Attribute.
Definition: attribdataholder.h:25
Frequency filtering attribute.
Definition: freqfilterattrib.h:42
float maxfreq_
Definition: freqfilterattrib.h:80

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