OpendTect-6_4  6.4
cbvsinfo.h
Go to the documentation of this file.
1 #ifndef cbvsinfo_h
2 #define cbvsinfo_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: A.H.Bril
9  Date: 12-3-2001
10  Contents: Common Binary Volume Storage format header
11  RCS: $Id$
12 ________________________________________________________________________
13 
14 -*/
15 
16 #include "generalmod.h"
17 #include "generalmod.h"
18 #include "posauxinfo.h"
19 #include "posidxpair2coord.h"
20 #include "basiccompinfo.h"
21 #include "samplingdata.h"
22 #include "posinfo.h"
23 #include "scaler.h"
24 class TrcKeyZSampling;
25 
26 
35 {
36 public:
37 
39  : seqnr_(0), nrtrcsperposn_(1) {}
40  ~CBVSInfo() { deepErase(compinfo_); }
41  CBVSInfo( const CBVSInfo& ci )
42  { *this = ci; }
43  CBVSInfo& operator =(const CBVSInfo&);
44 
45  mStruct(General) SurvGeom
46  {
47  SurvGeom()
48  : fullyrectandreg(false) {}
49 
50  bool fullyrectandreg;
51  BinID start, stop, step;
53  PosInfo::SortedCubeData cubedata;
54 
55  void merge(const SurvGeom&);
56  void reCalcBounds();
57 
58  int excludes(const BinID&) const;
59  inline bool includes( const BinID& bid ) const
60  { return !excludes(bid); }
61  bool includesInline(int) const;
62  void clean()
63  { fullyrectandreg = false; deepErase(cubedata);}
64 
65  bool moveToNextPos(BinID&) const;
66  bool moveToNextInline(BinID&) const;
67 
68 protected:
69 
70  void toIrreg();
71  void mergeIrreg(const SurvGeom&);
72  int outOfRange(const BinID&) const;
73 
74  };
75 
76  int seqnr_;
78 
83  SurvGeom geom_;
84 
87 
88  bool contributesTo(const TrcKeyZSampling&) const;
89  void clean()
90  { deepErase(compinfo_); geom_.clean();
91  usertext_ = ""; }
92 
93 };
94 
95 
96 #endif
#define mExpClass(module)
Definition: commondefs.h:160
int nrsamples_
Definition: cbvsinfo.h:82
~CBVSInfo()
Definition: cbvsinfo.h:40
void clean()
Definition: cbvsinfo.h:89
BufferString stdtext_
Definition: cbvsinfo.h:85
SamplingData< float > sd_
Definition: cbvsinfo.h:81
#define mStruct(module)
Definition: commondefs.h:165
TrcKeyZSampling & operator=(const TrcKeyZSampling &)
bool includes(const TrcKeyZSampling &) const
Selection of aux info at location. Note that BinID is always selected.
Definition: posauxinfo.h:49
PosAuxInfoSelection auxinfosel_
Definition: cbvsinfo.h:79
int nrtrcsperposn_
Definition: cbvsinfo.h:77
int seqnr_
Definition: cbvsinfo.h:74
Data available in CBVS format header and trailer.
Definition: cbvsinfo.h:34
Hor+Vert sampling in 3D surveys.
Definition: trckeyzsampling.h:35
CBVSInfo(const CBVSInfo &ci)
Definition: cbvsinfo.h:41
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:40
Positioning in a seismic survey: inline/crossline or lineNr/trcNr.
Definition: binid.h:30
BufferString usertext_
Definition: cbvsinfo.h:86
SurvGeom geom_
Definition: cbvsinfo.h:83
ObjectSet< BasicComponentInfo > compinfo_
Definition: cbvsinfo.h:80
CBVSInfo()
Definition: cbvsinfo.h:38
Position info for an entire 3D cube. The LineData&#39;s are sorted.
Definition: posinfo.h:159
Encapsulates linear transform from (i,j) index to (x,y) coordinates.
Definition: posidxpair2coord.h:26
void deepErase(ObjectSet< T > &os)
empty the ObjectSet deleting all objects pointed to.
Definition: objectset.h:118

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