OpendTect  6.3
velocitygridder.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: October 2006
9 ________________________________________________________________________
10 
11 
12 -*/
13 
14 #include "volumeprocessingmod.h"
15 
16 #include "arrayndalgo.h"
17 #include "volprocstep.h"
18 #include "veldesc.h"
19 
20 class Gridder2D;
22 namespace Vel
23 {
24  class Function;
25  class FunctionSource;
26 }
27 
28 
29 namespace VolProc
30 {
31 
34 mExpClass(VolumeProcessing) VelocityGridder : public Step
36 public:
38  Step, VelocityGridder,
39  "Gridding", tr("Velocity gridder") )
40 
42  ~VelocityGridder();
43  virtual void releaseData();
44 
45  void setSources(ObjectSet<Vel::FunctionSource>&);
47 
48  void setGridder(Gridder2D*); //becomes mine
49  bool setGridder(const IOPar&);
50  const Gridder2D* getGridder() const;
51  PolyTrend::Order getTrendOrder() const { return trendorder_; }
52 
53  void setLayerModel(InterpolationLayerModel*); //becomes mine
54  const InterpolationLayerModel* getLayerModel() const;
55 
56  virtual const VelocityDesc* getVelDesc() const;
57  virtual uiString errMsg() const { return errmsg_; }
58  virtual void fillPar(IOPar&) const;
59  virtual bool usePar(const IOPar&);
60 
61  virtual bool needsInput() const;
62  virtual bool canInputAndOutputBeSame() const { return true; }
63  virtual bool needsFullVolume() const { return true;}
64  virtual bool areSamplesIndependent() const { return true; }
65 
66  static const char* sKeyType() { return "Type"; }
67  static const char* sKeyID() { return "ID"; }
68  static const char* sKeyNrSources() { return "NrSources"; }
69 
70 protected:
71 
72  virtual Task* createTask();
73  virtual od_int64 extraMemoryUsage(OutputSlotID,const TrcKeySampling&,
74  const StepInterval<int>&) const;
75 
80 
81 };
82 
83 } // namespace VolProc
#define mExpClass(module)
Definition: commondefs.h:157
Velocity.
Definition: velocityfunction.h:30
virtual bool canInputAndOutputBeSame() const
Definition: velocitygridder.h:62
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
static const char * sKeyID()
Definition: velocitygridder.h:67
Definition: veldesc.h:36
Generic interface for 2D gridding.
Definition: gridder2d.h:30
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:200
#define od_int64
Definition: plftypes.h:34
Gridder2D * gridder_
Definition: velocitygridder.h:77
#define mDefaultFactoryInstantiation(baseclss, clss, keywrd, usernm)
Definition: factory.h:287
Definition: uistring.h:88
static const char * sKeyType()
Definition: velocitygridder.h:66
ObjectSet< Vel::FunctionSource > sources_
Definition: velocitygridder.h:79
PolyTrend::Order trendorder_
Definition: velocitygridder.h:78
void getSources(const EM::PosID &, TypeSet< EM::PosID > &) const
Definition: interpollayermodel.h:21
InterpolationLayerModel * layermodel_
Definition: velocitygridder.h:76
Generalized set of parameters of the keyword-value type.
Definition: iopar.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
virtual bool areSamplesIndependent() const
Definition: velocitygridder.h:64
virtual bool needsFullVolume() const
Definition: velocitygridder.h:63
virtual uiString errMsg() const
Definition: velocitygridder.h:57
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:187
VolProc::Step for velocity gridding.
Definition: velocitygridder.h:34
static const char * sKeyNrSources()
Definition: velocitygridder.h:68
An algorithm/calculation/transformation that takes one scalar volume as input, processes it...
Definition: volprocstep.h:39
BufferString errmsg_
Definition: horizontracker.h:117
Order
Definition: arrayndalgo.h:1620
Generalization of something (e.g. a computation) that needs to be done in multiple steps...
Definition: task.h:26
PolyTrend::Order getTrendOrder() const
Definition: velocitygridder.h:51

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