OpendTect  6.6
expnodc.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: Kristofer Tingdahl
8  Date: 07-10-1999
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 NoDC
13 
14 NoDC removes the DC attribute on the traces.
15 
16 Input:
17 0 Input Data
18 
19 Output:
20 0 Output Data
21 
22 @$*/
23 
24 #include <attribcalc.h>
25 #include <task.h>
26 #include <position.h>
27 #include <limits.h>
28 #include <seistrc.h>
29 #include <attribparamimpl.h>
30 
31 
32 mClass(AttribExp) NoDCAttrib : public AttribCalc
33 {
34 public:
36 
37  NoDCAttrib( Parameters* );
39 
40  int nrAttribs() const { return 1; }
41 
43  { return Seis::UnknowData; }
44 
45  const Interval<float>* inlDipMargin(int,int) const { return 0; }
46  const Interval<float>* crlDipMargin(int,int) const { return 0; }
47 
48  const char* definitionStr() const { return desc; }
49 protected:
50 
52 
53  mClass(AttribExp) Task : public AttribCalc::Task
54  {
55  public:
56  mClass(AttribExp) Input : public AttribCalc::Task::Input
57  {
58  public:
59  Input( const NoDCAttrib& calculator_ )
60  : calculator ( calculator_ )
61  , trc( 0 )
62  {}
63 
64  bool set( const BinID&,
66  const TypeSet<int>&,
67  const TypeSet<float*>& );
68 
70  { return new NoDCAttrib::Task::Input(*this);}
71 
73  int attribute;
75  };
76 
77  Task( const NoDCAttrib& calculator_ )
78  : outp( 0 )
79  , calculator( calculator_ ) {}
80 
81  Task( const Task& );
82  // Not impl. Only to give error if someone uses it
83 
84  void set( float t1_, int nrtimes_, float step_,
85  const AttribCalc::Task::Input* inp,
86  const TypeSet<float*>& outp_)
87  { t1 = t1_; nrtimes = nrtimes_;
88  step = step_; input = inp; outp = outp_[0]; }
89 
90  AttribCalc::Task* clone() const;
91 
92  int getFastestSz() const { return INT_MAX; }
93 
94  int nextStep();
95 
97  { return new NoDCAttrib::Task::Input( calculator ); }
98 
99  protected:
100  float* outp;
102 
103  };
104 
105  friend class NoDCAttrib::Task;
107 };
108 
NoDCAttrib::Task::Input::Input
Input(const NoDCAttrib &calculator_)
Definition: expnodc.h:59
sKey::Input
FixedString Input()
Definition: keystrs.h:81
NearSubtractAttrib::Task::Input::calculator
const NearSubtractAttrib & calculator
Definition: expnearsubtract.h:115
task.h
NearSubtractAttrib::desc
BufferString desc
Definition: expnearsubtract.h:79
NoDCAttrib::mAttrib0Param
mAttrib0Param(NoDCAttrib,"NoDC")
ObjectSet
Set of pointers to objects.
Definition: commontypes.h:31
NoDCAttrib::Task::Input::set
bool set(const BinID &, const ObjectSet< AttribProvider > &, const TypeSet< int > &, const TypeSet< float * > &)
NoDCAttrib::Task::calculator
const NoDCAttrib & calculator
Definition: expnodc.h:101
Seis::DataType
DataType
Definition: seistype.h:53
NoDCAttrib::definitionStr
const char * definitionStr() const
Definition: expnodc.h:48
NoDCAttrib::crlDipMargin
const Interval< float > * crlDipMargin(int, int) const
Definition: expnodc.h:46
SeisTrc
Seismic trace.
Definition: seistrc.h:34
NoDCAttrib::Task::Input::attribute
int attribute
Definition: expnodc.h:73
NoDCAttrib
Definition: expnodc.h:33
NoDCAttrib::desc
BufferString desc
Definition: expnodc.h:51
NoDCAttrib::Task::nextStep
int nextStep()
NoDCAttrib::Task::clone
AttribCalc::Task * clone() const
BinID
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:31
NearSubtractAttrib::Task::outp
float * outp
Definition: expnearsubtract.h:141
NoDCAttrib::Task::Input::calculator
const NoDCAttrib & calculator
Definition: expnodc.h:74
mClass
#define mClass(module)
Definition: commondefs.h:181
NoDCAttrib::Task
Definition: expnodc.h:54
NearSubtractAttrib::Task::Task
Task(const NearSubtractAttrib &calculator_)
Definition: expnearsubtract.h:118
NoDCAttrib::Task::Task
Task(const Task &)
NoDCAttrib::~NoDCAttrib
~NoDCAttrib()
position.h
NoDCAttrib::nrAttribs
int nrAttribs() const
Definition: expnodc.h:40
NoDCAttrib::inlDipMargin
const Interval< float > * inlDipMargin(int, int) const
Definition: expnodc.h:45
BufferString
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size.
Definition: bufstring.h:40
NoDCAttrib::Task::Input::trc
SeisTrc * trc
Definition: expnodc.h:72
seistrc.h
NoDCAttrib::Task::outp
float * outp
Definition: expnodc.h:100
NoDCAttrib::Task::set
void set(float t1_, int nrtimes_, float step_, const AttribCalc::Task::Input *inp, const TypeSet< float * > &outp_)
Definition: expnodc.h:84
Seis::UnknowData
@ UnknowData
Definition: seistype.h:54
NoDCAttrib::Task::Input
Definition: expnodc.h:57
NoDCAttrib::dataType
Seis::DataType dataType(int, const TypeSet< Seis::DataType > &) const
Definition: expnodc.h:42
MPE::step_
RowCol step_
Definition: horizontracker.h:140
NoDCAttrib::Task::Task
Task(const NoDCAttrib &calculator_)
Definition: expnodc.h:77
NoDCAttrib::Task::getFastestSz
int getFastestSz() const
Definition: expnodc.h:92
NoDCAttrib::Task::Input::clone
AttribCalc::Task::Input * clone() const
Definition: expnodc.h:69
Interval< float >
NoDCAttrib::Task::getInput
AttribCalc::Task::Input * getInput() const
Definition: expnodc.h:96
NoDCAttrib::NoDCAttrib
NoDCAttrib(Parameters *)
TypeSet< Seis::DataType >

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