59 int segmentOf(
int)
const;
61 void merge(
const LineData&,
bool incl);
64 int nearestSegment(
double)
const;
77 : lidx_(iln), segnr_(isn), sidx_(sidx) {}
84 void toStart() { lidx_ = segnr_ = sidx_ = 0; }
85 bool isValid()
const {
return lidx_>=0 && segnr_>=0 && sidx_>=0; }
101 { generate(start,stop,step); }
106 { copyContents(cd);
return *
this; }
108 int totalSize()
const;
112 virtual int indexOf(
int inl,
int* newidx=0)
const;
114 bool includes(
const BinID&)
const;
115 bool includes(
int inl,
int crl)
const;
123 bool isValid(
const BinID&)
const;
131 bool haveCrlStepInfo()
const;
132 bool isFullyRectAndReg()
const;
133 bool isCrlReversed()
const;
136 void merge(
const CubeData&,
bool incl);
139 bool allowreversed=
false);
144 virtual int indexOf(
const LineData* l )
const 165 : CubeData(start,stop,step) {}
171 { copyContents(scd);
return *
this; }
173 { copyContents(cd);
return *
this; }
175 virtual int indexOf(
int inl,
int* newidx=0)
const;
200 void add(
const BinID&);
230 const bool rv = cd_.toNext( cdp_ );
231 bid = binID();
return rv;
233 inline void reset() { cdp_.toPreStart(); }
#define mExpClass(module)
Definition: commondefs.h:160
OD class for stream write common access to the user log file, or std::cout in batch progs...
Definition: od_ostream.h:26
int prevcrl
Definition: posinfo.h:208
TypeSet< Segment > segments_
Definition: posinfo.h:56
CubeData()
Definition: posinfo.h:99
const int linenr_
Definition: posinfo.h:55
#define od_int64
Definition: plftypes.h:36
int lidx_
Definition: posinfo.h:79
CubeDataIterator(const CubeData &cd)
Definition: posinfo.h:225
SortedCubeData(const CubeData &cd)
Definition: posinfo.h:169
virtual int indexOf(const LineData *l) const
Definition: posinfo.h:144
ObjectSet< T >::size_type indexOf(const ObjectSet< T > &os, const S &val)
Locate object in set.
Definition: objectset.h:169
void toPreStart()
Definition: posinfo.h:83
SortedCubeData(const SortedCubeData &cd)
Definition: posinfo.h:166
bool isValid() const
Definition: posinfo.h:85
OD class for stream read.
Definition: od_istream.h:24
LineData(int i)
Definition: posinfo.h:53
void reset()
Definition: posinfo.h:233
Set of (small) copyable elements.
Definition: commontypes.h:30
Horizontal sampling (inline and crossline range and steps).
Definition: trckeysampling.h:27
virtual int indexOf(const LineData *l) const
Definition: posinfo.h:180
bool haveInlStepInfo() const
Definition: posinfo.h:130
const CubeData & cd_
Definition: posinfo.h:236
CubeData & cd_
Definition: posinfo.h:205
Position in a CubeData.
Definition: posinfo.h:73
Iterates through CubeData.
Definition: posinfo.h:221
Position info for a line - in a 3D cube, that would be an inline. Stored as (crossline-)number segmen...
Definition: posinfo.h:48
Position info, often segmented.
Definition: posinfo.h:40
void toStart()
Definition: posinfo.h:84
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:30
bool next(BinID &bid)
Definition: posinfo.h:228
int segnr_
Definition: posinfo.h:80
SortedCubeData(const BinID &start, const BinID &stop, const BinID &step)
Definition: posinfo.h:163
LineData::Segment seg_
Definition: posinfo.h:207
CubeData(const CubeData &cd)
Definition: posinfo.h:102
Fills CubeData object. Requires inline- and crossline-sorting.
Definition: posinfo.h:194
ObjectSet where the objects contained are owned by this set.
Definition: manobjectset.h:23
Position info for an entire 3D cube. The LineData's are not sorted.
Definition: posinfo.h:95
CubeDataPos(int iln=0, int isn=0, int sidx=-1)
Definition: posinfo.h:76
SortedCubeData()
Definition: posinfo.h:162
BinID binID() const
Definition: posinfo.h:234
virtual size_type indexOf(const T *) const
Definition: objectset.h:337
Position info for an entire 3D cube. The LineData's are sorted.
Definition: posinfo.h:159
CubeData(BinID start, BinID stop, BinID step)
Definition: posinfo.h:100
virtual int indexOf(int inl, int *newidx=0) const
newidx only filled if not null and -1 is returned
LineData * ld_
Definition: posinfo.h:206
CubeDataPos cdp_
Definition: posinfo.h:237
int sidx_
Definition: posinfo.h:81
StepInterval< int > Segment
Definition: posinfo.h:51