OpendTect  6.3
wellloginterpolator.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: Y.C. Liu
8  Date: Sept 2010
9 ________________________________________________________________________
10 
11 -*/
12 
13 #include "volumeprocessingmod.h"
14 
15 #include "arrayndalgo.h"
16 #include "dbkey.h"
17 #include "volprocstep.h"
18 #include "wellextractdata.h"
19 
20 class BufferStringSet;
21 class Gridder2D;
24 namespace Well { class Data; class Log; }
25 
26 
27 namespace VolProc
28 {
29 
30 class WellLogInfo;
31 class WellLogInfoSetup;
32 
33 
36 mExpClass(VolumeProcessing) WellLogInterpolator : public Step
38 public:
41  "WellLog Interpolator",
42  tr("WellLog Interpolator") )
43 
46  virtual void releaseData();
47 
48  bool is2D() const;
49 
50  void getWellNames(BufferStringSet&) const;
51  void getWellIDs(DBKeySet&) const;
52  const char* getLogName() const;
53  const Gridder2D* getGridder() const { return gridder_; }
54  PolyTrend::Order getTrendOrder() const { return trendorder_; }
55  const InterpolationLayerModel* getLayerModel() const;
56  const Well::ExtractParams& getSelParams();
57 
58  void setGridder(const IOPar&);
59  void setWellData(const DBKeySet&,
60  const char* lognm);
61  void setWellExtractParams(
62  const Well::ExtractParams&);
63  void setLayerModel(InterpolationLayerModel*);
64 
65  virtual void fillPar(IOPar&) const;
66  virtual bool usePar(const IOPar&);
67  virtual uiString errMsg() const { return errmsg_; }
68 
69  virtual bool canInputAndOutputBeSame() const { return true; }
70  virtual bool needsFullVolume() const { return false;}
71  virtual bool areSamplesIndependent() const { return true; }
72  virtual bool needsInput() const { return false;}
73  virtual bool prefersBinIDWise() const { return true; }
74 
75 protected:
76 
77  void setGridder(const Gridder2D*);
78  virtual bool prepareComp(int);
79  virtual bool computeBinID(const BinID&,int);
80  virtual od_int64 extraMemoryUsage(OutputSlotID,
81  const TrcKeySampling&,
82  const StepInterval<int>&) const;
83 
92 
95 
96 };
97 
98 } // namespace VolProc
#define mExpClass(module)
Definition: commondefs.h:157
BufferString logname_
Definition: wellloginterpolator.h:90
StepInterval< int > outputcrlrg_
Definition: wellloginterpolator.h:94
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
bool is2D(GeomType gt)
Definition: seistype.h:32
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
virtual bool prefersBinIDWise() const
Definition: wellloginterpolator.h:73
Definition: dbkey.h:98
ZRangeSelector to extract parameters.
Definition: wellextractdata.h:112
PolyTrend::Order getTrendOrder() const
Definition: wellloginterpolator.h:54
Definition: file.h:109
#define mDefaultFactoryInstantiation(baseclss, clss, keywrd, usernm)
Definition: factory.h:287
Definition: uistring.h:88
InterpolationLayerModel * layermodel_
Definition: wellloginterpolator.h:84
Set of BufferString objects.
Definition: bufstringset.h:25
ObjectSet< WellLogInfo > infos_
Definition: wellloginterpolator.h:88
virtual bool needsFullVolume() const
Definition: wellloginterpolator.h:70
const Gridder2D * getGridder() const
Definition: wellloginterpolator.h:53
Well::ExtractParams params_
Definition: wellloginterpolator.h:91
Definition: interpollayermodel.h:21
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
virtual bool needsInput() const
Definition: wellloginterpolator.h:72
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
Definition: wellcommon.h:16
int OutputSlotID
Definition: volprocstep.h:47
DBKeySet wellmids_
Definition: wellloginterpolator.h:89
Uses inverse distance method for 2D gridding.
Definition: gridder2d.h:116
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:187
Definition: repos.h:23
An algorithm/calculation/transformation that takes one scalar volume as input, processes it...
Definition: volprocstep.h:39
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
virtual uiString errMsg() const
Definition: wellloginterpolator.h:67
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:28
InverseDistanceGridder2D * invdistgridder_
Definition: wellloginterpolator.h:86
BufferString errmsg_
Definition: horizontracker.h:117
Gridder2D * gridder_
Definition: wellloginterpolator.h:85
Definition: wellloginterpolator.h:36
virtual bool areSamplesIndependent() const
Definition: wellloginterpolator.h:71
virtual bool canInputAndOutputBeSame() const
Definition: wellloginterpolator.h:69
Order
Definition: arrayndalgo.h:1620
PolyTrend::Order trendorder_
Definition: wellloginterpolator.h:87
StepInterval< int > outputinlrg_
Definition: wellloginterpolator.h:93

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