OpendTect  6.6
volprocsmoother.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: K. Tingdahl
8  Date: Feb 2008
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 -*/
13 
14 #include "volumeprocessingmod.h"
15 #include "volprocstep.h"
16 
17 template <class T> class Smoother3D;
18 
19 namespace VolProc
20 {
21 
26 mExpClass(VolumeProcessing) Smoother : public Step
28 public:
31  "Smoother", tr("Smoother"))
32 
33  ~Smoother();
35 
36  bool needsInput() const { return true; }
40  Survey::Geometry::ID) const;
41 
42  bool setOperator(const char*,float param,
43  int inlsz,int crlsz,int zsz);
45  int inlSz() const;
46  int crlSz() const;
47  int zSz() const;
48  const char* getOperatorName() const;
49  float getOperatorParam() const;
50 
51  void fillPar(IOPar&) const;
52  bool usePar(const IOPar&);
53 
54  void releaseData();
55  bool canInputAndOutputBeSame() const { return false; }
56  bool needsFullVolume() const { return true; }
57  bool canHandle2D() const { return true; }
58 
60 
61  /* mDeprecated (this function will be protected virtual after 6.0) */
63  const StepInterval<int>&) const;
64 
65 protected:
66 
67  static const char* sKeyZStepout() { return "ZStepout"; }
68 
69  bool prepareComp(int) { return true; }
70 
72 
73 private:
74 
75  void setStepouts();
76 
77 };
78 
79 } // namespace VolProc
80 
TrcKeySampling
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:35
VolProc::Smoother::canHandle2D
bool canHandle2D() const
Definition: volprocsmoother.h:57
VolProc
Adapter for a VolProc chain to external attribute calculation.
Definition: seisdatapackwriter.h:24
VolProc::Smoother::needsInput
bool needsInput() const
Definition: volprocsmoother.h:36
VolProc::Smoother::usePar
bool usePar(const IOPar &)
VolProc::Smoother::smoother_
Smoother3D< float > * smoother_
Definition: volprocsmoother.h:71
od_int64
#define od_int64
Definition: plftypes.h:35
mDefaultFactoryInstantiation
#define mDefaultFactoryInstantiation(baseclss, clss, keywrd, usernm)
Definition: factory.h:288
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
VolProc::Smoother::extraMemoryUsage
od_int64 extraMemoryUsage(OutputSlotID, const TrcKeySampling &, const StepInterval< int > &) const
VolProc::Smoother::canInputAndOutputBeSame
bool canInputAndOutputBeSame() const
Definition: volprocsmoother.h:55
VolProc::Smoother::setStepouts
void setStepouts()
mODTextTranslationClass
#define mODTextTranslationClass(clss)
Definition: uistring.h:40
StepInterval< int >
VolProc::Smoother::prepareComp
bool prepareComp(int)
Definition: volprocsmoother.h:69
VolProc::Smoother
A subclass of Step to smoothen volumes.
Definition: volprocsmoother.h:27
VolProc::Smoother::fillPar
void fillPar(IOPar &) const
VolProc::Smoother::getInputZRg
StepInterval< int > getInputZRg(const StepInterval< int > &) const
VolProc::Smoother::releaseData
void releaseData()
Task
Generalization of something (e.g. a computation) that needs to be done in multiple steps.
Definition: task.h:28
VolProc::Smoother::crlSz
int crlSz() const
VolProc::Smoother::getInputZRgWithGeom
StepInterval< int > getInputZRgWithGeom(const StepInterval< int > &, Survey::Geometry::ID) const
VolProc::Smoother::createTask
Task * createTask()
VolProc::Smoother::getOperatorParam
float getOperatorParam() const
VolProc::Step
An algorithm/calculation/transformation that takes one scalar volume as input, processes it,...
Definition: volprocstep.h:42
Smoother3D
Smoothes a 3d signal with an operator.
Definition: smoother3d.h:27
VolProc::Smoother::inlSz
int inlSz() const
VolProc::Smoother::getInputHRg
TrcKeySampling getInputHRg(const TrcKeySampling &) const
volprocstep.h
VolProc::Smoother::needsFullVolume
bool needsFullVolume() const
Definition: volprocsmoother.h:56
Batch::ID
int ID
Definition: batchjobdispatch.h:24
VolProc::Smoother::getOperatorName
const char * getOperatorName() const
VolProc::Smoother::sKeyZStepout
static const char * sKeyZStepout()
Definition: volprocsmoother.h:67
VolProc::Step::OutputSlotID
int OutputSlotID
Definition: volprocstep.h:46
VolProc::Smoother::zSz
int zSz() const
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
VolProc::Smoother::setOperator
bool setOperator(const char *, float param, int inlsz, int crlsz, int zsz)
Size is set in multiples of inl/crl/z-step from SI.
VolProc::Smoother::Smoother
mODTextTranslationClass(Smoother) public Smoother()

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