OpendTect  6.3
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 ________________________________________________________________________
10 
11 -*/
12 
13 #include "volumeprocessingmod.h"
14 #include "volprocstep.h"
15 
16 template <class T> class Smoother3D;
17 
18 namespace VolProc
19 {
20 
21 
24 mExpClass(VolumeProcessing) Smoother : public Step
26 public:
29  "Smoother", tr("Smoother"))
30 
31  Smoother();
32  ~Smoother();
33  virtual void releaseData();
34 
35  bool canHandle2D() const { return true; }
36  bool setOperator(const char*,float param,
37  int inlsz,int crlsz,int zsz);
39  int inlSz() const;
40  int crlSz() const;
41  int zSz() const;
42  const char* getOperatorName() const;
43  float getOperatorParam() const;
44 
45  virtual TrcKeySampling getInputHRg(const TrcKeySampling&) const;
46  virtual StepInterval<int> getInputZRg(const StepInterval<int>&) const;
47 
48  virtual void fillPar(IOPar&) const;
49  virtual bool usePar(const IOPar&);
50 
51  virtual bool needsFullVolume() const { return true; }
52  virtual bool canInputAndOutputBeSame() const { return false; }
53  virtual bool areSamplesIndependent() const { return true; }
54 
55  Task* createTask();
56 
57 protected:
58 
59  virtual od_int64 extraMemoryUsage(OutputSlotID,const TrcKeySampling&,
60  const StepInterval<int>&) const;
61 
63 
64  static const char* sKeyZStepout() { return "ZStepout"; }
65 
66 };
67 
68 } // namespace VolProc
static const char * sKeyZStepout()
Definition: volprocsmoother.h:64
#define mExpClass(module)
Definition: commondefs.h:157
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:200
#define od_int64
Definition: plftypes.h:34
Smoother3D< float > * smoother_
Definition: volprocsmoother.h:62
#define mDefaultFactoryInstantiation(baseclss, clss, keywrd, usernm)
Definition: factory.h:287
a Step that smooths the input data.
Definition: volprocsmoother.h:24
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
virtual bool areSamplesIndependent() const
Definition: volprocsmoother.h:53
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:25
Adapter for a VolProc chain to external attribute calculation.
Definition: velocitygridder.h:29
int OutputSlotID
Definition: volprocstep.h:47
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:187
virtual bool canInputAndOutputBeSame() const
Definition: volprocsmoother.h:52
An algorithm/calculation/transformation that takes one scalar volume as input, processes it...
Definition: volprocstep.h:39
Smoothes a 3d signal with an operator.
Definition: smoother3d.h:25
virtual bool needsFullVolume() const
Definition: volprocsmoother.h:51
bool canHandle2D() const
Definition: volprocsmoother.h:35
Generalization of something (e.g. a computation) that needs to be done in multiple steps...
Definition: task.h:26

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