OpendTect  6.6
velocityfunctiongrid.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: April 2005
9  RCS: $Id$
10 ________________________________________________________________________
11 
12 
13 -*/
14 
15 #include "velocitymod.h"
16 #include "binidvalset.h"
17 #include "samplingdata.h"
18 #include "thread.h"
19 #include "velocityfunction.h"
20 
21 class BinIDValueSet;
22 class Gridder2D;
24 
25 namespace Vel
26 {
27 
28 class GriddedSource;
29 
34 {
35 public:
37 
39  bool moveTo(const BinID&);
40  bool fetchSources();
41 
42  bool isInfluencedBy(const BinID&) const;
43 
44  void setGridder(const Gridder2D&);
45  Gridder2D* getGridder() { return gridder_; }
47 
48 protected:
50  friend class GriddedSource;
51 
52  bool computeVelocity(float z0, float dz, int nr,
53  float* res ) const;
54  ConstRefMan<Function> getInputFunction(const BinID& bid,int& source);
55  void fetchPerfectFit(const BinID&);
56 
60 
63 
65 };
66 
67 
69 {
70 public:
72  const VelocityDesc& getDesc() const;
73  const char* factoryKeyword() const { return sType(); }
74  static const char* sType() { return "GridVelocity"; }
75 
76  const Gridder2D* getGridder() const;
78 
82 
84 
86 
87  NotifierAccess* changeNotifier() { return &notifier_; }
88  BinID changeBinID() const { return changebid_; }
89 
91 
92  void fillPar(IOPar&) const;
93  bool usePar(const IOPar&);
94 
95 protected:
96  friend class GriddedFunction;
99  bool initGridder();
100  static const char* sKeyGridder() { return "Gridder"; }
101 
103 
105 
111 
112  BinIDValueSet sourcepos_; //All sources
113 
116 };
117 
118 } // namespace Vel
119 
ConstRefMan
Definition: ptrman.h:233
Vel::GriddedSource::changebid_
BinID changebid_
Definition: velocityfunctiongrid.h:107
Vel::GriddedFunction::velocityfunctions_
ObjectSet< const Function > velocityfunctions_
Definition: velocityfunctiongrid.h:57
binidvalset.h
Vel::GriddedSource::initGridder
bool initGridder()
Vel
Velocity.
Definition: velocityfunction.h:32
Vel::Function
Definition: velocityfunction.h:41
Vel::GriddedSource::fillPar
void fillPar(IOPar &) const
velocityfunction.h
Vel::GriddedSource::createFunction
GriddedFunction * createFunction(const BinID &)
Vel::GriddedFunction::getGridder
Gridder2D * getGridder()
Definition: velocityfunctiongrid.h:45
ObjectSet
Set of pointers to objects.
Definition: commontypes.h:31
Vel::GriddedSource::getGridder
const Gridder2D * getGridder() const
BinIDValueSet
A Pos::IdxPairValueSet with BinIDs.
Definition: binidvalset.h:23
mExpClass
#define mExpClass(module)
Definition: commondefs.h:177
Vel::GriddedSource::gridsourcebids_
TypeSet< BinID > gridsourcebids_
Definition: velocityfunctiongrid.h:114
Vel::GriddedSource::createFunction
GriddedFunction * createFunction()
Vel::GriddedFunction::getAvailableZ
StepInterval< float > getAvailableZ() const
samplingdata.h
Vel::GriddedFunction::gridder_
Gridder2D * gridder_
Definition: velocityfunctiongrid.h:61
Vel::GriddedSource::sourcepos_
BinIDValueSet sourcepos_
Definition: velocityfunctiongrid.h:112
CallBacker
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:185
Gridder2D
Generic interface for 2D gridding.
Definition: gridder2d.h:32
Vel::GriddedFunction::setLayerModel
void setLayerModel(const InterpolationLayerModel *)
Vel::GriddedSource::setSource
void setSource(const TypeSet< MultiID > &)
Vel::GriddedSource::datasources_
ObjectSet< FunctionSource > datasources_
Definition: velocityfunctiongrid.h:104
Vel::GriddedSource::setLayerModel
void setLayerModel(const InterpolationLayerModel *)
Vel::GriddedSource::getDesc
const VelocityDesc & getDesc() const
Vel::GriddedSource::factoryKeyword
const char * factoryKeyword() const
Definition: velocityfunctiongrid.h:73
Vel::GriddedFunction::fetchPerfectFit
void fetchPerfectFit(const BinID &)
BinID
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:31
StepInterval< float >
VelocityDesc
Definition: veldesc.h:38
Vel::GriddedSource::changeNotifier
NotifierAccess * changeNotifier()
Definition: velocityfunctiongrid.h:87
Vel::GriddedFunction::moveTo
bool moveTo(const BinID &)
Vel::GriddedFunction::isInfluencedBy
bool isInfluencedBy(const BinID &) const
NotifierAccess
Interface class for Notifier. See comments there.
Definition: notify.h:22
Vel::GriddedSource::sType
static const char * sType()
Definition: velocityfunctiongrid.h:74
Vel::GriddedFunction::GriddedFunction
GriddedFunction(GriddedSource &)
Notifier
Class to help setup a callback handling.
Definition: notify.h:126
Vel::GriddedFunction::setGridder
void setGridder(const Gridder2D &)
I will clone.
Vel::GriddedFunction::gridvalues_
TypeSet< float > gridvalues_
Definition: velocityfunctiongrid.h:64
Vel::GriddedSource::gridsourcecoords_
TypeSet< Coord > gridsourcecoords_
Definition: velocityfunctiongrid.h:115
InterpolationLayerModel
Definition: interpollayermodel.h:23
Vel::GriddedFunction::layermodel_
const InterpolationLayerModel * layermodel_
Definition: velocityfunctiongrid.h:62
Vel::GriddedSource::gridder_
Gridder2D * gridder_
Definition: velocityfunctiongrid.h:108
Vel::GriddedFunction::sources_
TypeSet< int > sources_
Definition: velocityfunctiongrid.h:58
Vel::GriddedSource::notifier_
Notifier< GriddedSource > notifier_
Definition: velocityfunctiongrid.h:106
Vel::GriddedSource::sKeyGridder
static const char * sKeyGridder()
Definition: velocityfunctiongrid.h:100
Vel::GriddedFunction
Definition: velocityfunctiongrid.h:34
Vel::GriddedSource::changeBinID
BinID changeBinID() const
Definition: velocityfunctiongrid.h:88
Vel::GriddedSource::sourceChangeCB
void sourceChangeCB(CallBacker *)
Vel::GriddedSource::setSource
void setSource(ObjectSet< FunctionSource > &)
Vel::GriddedSource::layermodel_
const InterpolationLayerModel * layermodel_
Definition: velocityfunctiongrid.h:110
Vel::GriddedSource::getSources
void getSources(TypeSet< MultiID > &) const
Vel::GriddedSource::usePar
bool usePar(const IOPar &)
Vel::GriddedSource::GriddedSource
GriddedSource()
Vel::GriddedFunction::~GriddedFunction
~GriddedFunction()
Vel::GriddedFunction::directsource_
const Function * directsource_
Definition: velocityfunctiongrid.h:59
Vel::GriddedSource
Definition: velocityfunctiongrid.h:69
Vel::GriddedSource::getSources
const ObjectSet< FunctionSource > & getSources() const
Vel::GriddedSource::~GriddedSource
~GriddedSource()
Vel::GriddedFunction::fetchSources
bool fetchSources()
Vel::GriddedSource::gridderinited_
bool gridderinited_
Definition: velocityfunctiongrid.h:109
Vel::GriddedFunction::getInputFunction
ConstRefMan< Function > getInputFunction(const BinID &bid, int &source)
Vel::GriddedSource::setGridder
void setGridder(Gridder2D *)
Becomes mine.
thread.h
IOPar
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:55
Vel::GriddedFunction::computeVelocity
bool computeVelocity(float z0, float dz, int nr, float *res) const
Vel::FunctionSource
Definition: velocityfunction.h:85
TypeSet< int >

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