OpendTect  6.6
specdecompattrib.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: Jan 2004
9  RCS: $Id$
10 ________________________________________________________________________
11 -*/
12 
13 #include "attributesmod.h"
14 #include "attribprovider.h"
15 #include "arrayndalgo.h"
16 #include "wavelettrans.h"
17 #include "fourier.h"
18 
19 namespace Attrib
20 {
21 
22 class DataHolder;
23 
47 {
48 public:
49  static void initClass();
51 
52  static const char* attribName() { return "SpecDecomp"; }
53  static const char* transformTypeStr() { return "transformtype"; }
54  static const char* windowStr() { return "window"; }
55  static const char* gateStr() { return "gate"; }
56  static const char* deltafreqStr() { return "deltafreq"; }
57  static const char* dwtwaveletStr() { return "dwtwavelet"; }
58  static const char* cwtwaveletStr() { return "cwtwavelet"; }
59  static const char* transTypeNamesStr(int);
60 
63 
64 protected:
67  static void updateDesc(Desc&);
68  static void updateDefaults(Desc&);
69 
71  { return false; }
72 
73  bool getInputOutput(int input,TypeSet<int>& res) const;
74  bool getInputData(const BinID&,int idx);
75  bool computeData(const DataHolder&,const BinID& relpos,
76  int t0,int nrsamples,int threadid) const;
77  bool calcDFT(const DataHolder&,int t0,int nrsamples) const;
78  bool calcDWT(const DataHolder&,int t0,int nrsamples) const;
79  bool calcCWT(const DataHolder&,int t0,int nrsamples) const;
80 
81  const Interval<float>* reqZMargin(int input, int output) const;
82  const Interval<int>* desZSampMargin(int input, int output) const;
83 
84  bool areAllOutputsEnabled() const;
85 
89  float deltafreq_;
92 
94 
98  int scalelen_;
99 
100  float df_;
101  int fftsz_;
102  int sz_;
103 
106 
107  int realidx_;
108  int imagidx_;
109 
112 };
113 
114 }; // namespace Attrib
115 
116 
arrayndalgo.h
Attrib::SpecDecomp::desgate_
Interval< int > desgate_
Definition: specdecompattrib.h:105
Attrib::SpecDecomp::windowtype_
ArrayNDWindow::WindowType windowtype_
Definition: specdecompattrib.h:87
Attrib::SpecDecomp::imdata_
const DataHolder * imdata_
Definition: specdecompattrib.h:111
Attrib::SpecDecomp::createInstance
static Provider * createInstance(Desc &)
Attrib::SpecDecomp::df_
float df_
Definition: specdecompattrib.h:100
fourier.h
Attrib::Provider
Provides the actual output to ...
Definition: attribprovider.h:44
Attrib::SpecDecomp::dwtwaveletStr
static const char * dwtwaveletStr()
Definition: specdecompattrib.h:57
Attrib::SpecDecomp
Spectral Decomposition Attribute.
Definition: specdecompattrib.h:47
Attrib::SpecDecomp::allowParallelComputation
bool allowParallelComputation() const
Definition: specdecompattrib.h:70
Fourier::CC
Does Fourier Transforms of any size.
Definition: fourier.h:30
BufferStringSet
Set of BufferString objects.
Definition: bufstringset.h:26
Attrib::SpecDecomp::attribName
static const char * attribName()
Definition: specdecompattrib.h:52
Attrib::SpecDecomp::windowStr
static const char * windowStr()
Definition: specdecompattrib.h:54
ArrayNDWindow::WindowType
WindowType
Definition: arrayndalgo.h:351
Attrib::SpecDecomp::redata_
const DataHolder * redata_
Definition: specdecompattrib.h:110
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
CWT
Continuous Wavelet Transform.
Definition: wavelettrans.h:134
Attrib::SpecDecomp::deltafreq_
float deltafreq_
Definition: specdecompattrib.h:89
Attrib::SpecDecomp::calcCWT
bool calcCWT(const DataHolder &, int t0, int nrsamples) const
Attrib::SpecDecomp::transformtype_
int transformtype_
Definition: specdecompattrib.h:86
Attrib::SpecDecomp::~SpecDecomp
~SpecDecomp()
Attrib::SpecDecomp::desZSampMargin
const Interval< int > * desZSampMargin(int input, int output) const
Attrib::DataHolder
Holds the attribute data.
Definition: attribdataholder.h:43
Attrib::SpecDecomp::window_
ArrayNDWindow * window_
Definition: specdecompattrib.h:95
Attrib::SpecDecomp::gateStr
static const char * gateStr()
Definition: specdecompattrib.h:55
Attrib::SpecDecomp::samplegate_
Interval< int > samplegate_
Definition: specdecompattrib.h:93
Attrib::SpecDecomp::deltafreqStr
static const char * deltafreqStr()
Definition: specdecompattrib.h:56
Attrib::SpecDecomp::transTypeNamesStr
static const char * transTypeNamesStr(int)
Attrib::SpecDecomp::cwtwaveletStr
static const char * cwtwaveletStr()
Definition: specdecompattrib.h:58
Attrib::SpecDecomp::fftisinit_
bool fftisinit_
Definition: specdecompattrib.h:104
BinID
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:31
Attrib::SpecDecomp::getInputData
bool getInputData(const BinID &, int idx)
Attrib::SpecDecomp::initClass
static void initClass()
Attrib::SpecDecomp::getCompNames
void getCompNames(BufferStringSet &) const
ArrayNDWindow
Tapers the N-dimentional ArrayND with a windowFunction.
Definition: arrayndalgo.h:349
Attrib::SpecDecomp::fft_
Fourier::CC * fft_
Definition: specdecompattrib.h:96
Attrib::SpecDecomp::computeData
bool computeData(const DataHolder &, const BinID &relpos, int t0, int nrsamples, int threadid) const
Attrib::SpecDecomp::calcDFT
bool calcDFT(const DataHolder &, int t0, int nrsamples) const
Attrib::SpecDecomp::getInputOutput
bool getInputOutput(int input, TypeSet< int > &res) const
Attrib::SpecDecomp::areAllOutputsEnabled
bool areAllOutputsEnabled() const
Attrib::SpecDecomp::dwtwavelet_
WaveletTransform::WaveletType dwtwavelet_
Definition: specdecompattrib.h:90
CWT::WaveletType
WaveletType
Definition: wavelettrans.h:142
Attrib::SpecDecomp::gate_
Interval< float > gate_
Definition: specdecompattrib.h:88
Attrib::SpecDecomp::fftsz_
int fftsz_
Definition: specdecompattrib.h:101
Attrib::SpecDecomp::cwt_
CWT cwt_
Definition: specdecompattrib.h:97
Attrib::SpecDecomp::calcDWT
bool calcDWT(const DataHolder &, int t0, int nrsamples) const
Attrib::SpecDecomp::updateDesc
static void updateDesc(Desc &)
Attrib::SpecDecomp::reqZMargin
const Interval< float > * reqZMargin(int input, int output) const
attribprovider.h
Attrib::SpecDecomp::realidx_
int realidx_
Definition: specdecompattrib.h:107
Attrib::SpecDecomp::transformTypeStr
static const char * transformTypeStr()
Definition: specdecompattrib.h:53
Attrib::SpecDecomp::cwtwavelet_
CWT::WaveletType cwtwavelet_
Definition: specdecompattrib.h:91
wavelettrans.h
Attrib::SpecDecomp::imagidx_
int imagidx_
Definition: specdecompattrib.h:108
sKey::Attributes
FixedString Attributes()
Definition: keystrs.h:39
Attrib::SpecDecomp::SpecDecomp
SpecDecomp(Desc &)
WaveletTransform::WaveletType
WaveletType
Definition: wavelettrans.h:34
Attrib
Semblance Attribute.
Definition: attribdataholder.h:25
Interval< float >
Attrib::SpecDecomp::sz_
int sz_
Definition: specdecompattrib.h:102
Attrib::Desc
Description of an attribute in an Attrib::DescSet. Each attribute has a name (e.g....
Definition: attribdesc.h:89
Attrib::SpecDecomp::updateDefaults
static void updateDefaults(Desc &)
Attrib::SpecDecomp::prepPriorToOutputSetup
bool prepPriorToOutputSetup()
TypeSet< int >
Attrib::SpecDecomp::scalelen_
int scalelen_
Definition: specdecompattrib.h:98

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