1 #ifndef rangeposprovider_h 2 #define rangeposprovider_h 16 #include "generalmod.h" 20 namespace PosInfo {
class Line2DData; }
37 const char* type()
const;
43 virtual bool toNextPos();
44 virtual bool toNextZ();
47 virtual float curZ()
const;
48 virtual bool includes(
const BinID&,
float z=
mUdf(
float))
const;
53 virtual void getExtent(
BinID& start,
BinID& stop)
const;
56 virtual int estNrZPerPos()
const;
62 { tkzs_.hsamp_ = tks; }
95 const char* type()
const;
101 virtual bool toNextPos();
102 virtual bool toNextZ();
104 virtual int curNr()
const;
105 virtual float curZ()
const;
106 virtual Coord curCoord()
const;
107 virtual TrcKey curTrcKey()
const;
108 virtual bool includes(
int,
float z=
mUdf(
float),
int lidx=0)
const;
109 virtual bool includes(
const Coord&,
float z=
mUdf(
float))
const;
114 virtual void getExtent(
Interval<int>& rg,
int lidx=-1 )
const;
117 virtual int estNrZPerPos()
const;
121 {
return trcrgs_[lidx];}
125 {
return zrgs_[lidx];}
144 void getCurRanges()
const;
virtual Provider * clone() const
Definition: rangeposprovider.h:39
#define mExpClass(module)
Definition: commondefs.h:160
int curlineidx_
Definition: rangeposprovider.h:132
Provides a series of positions; can also be used for subselection.
Definition: posprovider.h:33
BinID curbid_
Definition: rangeposprovider.h:70
int curtrcidx_
Definition: rangeposprovider.h:131
static Provider2D * create()
Definition: rangeposprovider.h:149
const StepInterval< float > & zRange(int lidx=0) const
Definition: rangeposprovider.h:124
Geometry of a 2D Line.
Definition: survgeom2d.h:27
void usePar(const IOPar &iop, ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:188
#define od_int64
Definition: plftypes.h:36
const char * factoryKeyword() const
Definition: rangeposprovider.h:38
const Survey::Geometry2D * curgeom_
Definition: rangeposprovider.h:138
TypeSet< StepInterval< int > > trcrgs_
Definition: rangeposprovider.h:129
StepInterval< float > curzrg_
Definition: rangeposprovider.h:136
Provides a subselection for 3D surveys.
Definition: posprovider.h:60
virtual bool includes(const BinID &, float z=mUdf(float)) const =0
2D provider based on StepInterval<int>.
Definition: rangeposprovider.h:88
A cartesian coordinate in 2D space.
Definition: coord.h:25
const char * factoryKeyword() const
Definition: rangeposprovider.h:96
virtual BinID curBinID() const
Definition: rangeposprovider.h:46
TrcKeyZSampling & tkzs_
Definition: rangeposprovider.h:69
Set of (small) copyable elements.
Definition: commontypes.h:30
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:47
int curzidx_
Definition: rangeposprovider.h:71
int zsampsz_
Definition: rangeposprovider.h:72
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:27
#define mUdf(type)
Use this macro to get the undefined for simple types.
Definition: undefval.h:272
const TrcKeyZSampling & sampling() const
Definition: rangeposprovider.h:59
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
Position.
Definition: commontypes.h:42
static Provider3D * create()
Definition: rangeposprovider.h:77
void fillPar(IOPar &iop, const ODPolygon< T > &poly, const char *inpkey)
Definition: polygon.h:175
int curlinezsampsz_
Definition: rangeposprovider.h:134
TypeSet< StepInterval< float > > zrgs_
Definition: rangeposprovider.h:130
Index_Type GeomID
Definition: commontypes.h:52
Position info, often segmented.
Definition: posinfo.h:40
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:40
virtual bool includes(const Coord &c, float z=mUdf(float)) const
Definition: rangeposprovider.h:64
void setHSampling(const TrcKeySampling &tks) const
Definition: rangeposprovider.h:61
Provides a subselection for 2D surveys - requires the line name(s).
Definition: posprovider.h:95
3D provider based on TrcKeyZSampling
Definition: rangeposprovider.h:29
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:30
StepInterval< int > curtrcrg_
Definition: rangeposprovider.h:135
Represents a unique trace position in one of the surveys that OpendTect is managing.
Definition: trckey.h:28
int curzidx_
Definition: rangeposprovider.h:133
const StepInterval< int > & trcRange(int lidx) const
Definition: rangeposprovider.h:120
mDeclEmptyTranslatorBundle(Strat, StratLayerSequenceGenDesc, od,"sgd") mDeclEmptyTranslatorBundle(Strat
virtual Provider * clone() const
Definition: rangeposprovider.h:97