55 size_type size()
const;
56 inline bool isEmpty()
const {
return size() < 1; }
57 ZType dah(PointID)
const;
58 ZType firstDah()
const;
59 ZType lastDah()
const;
60 ValueType value(PointID)
const;
61 ValueType valueAt(ZType,
bool no_undefs=
false)
const;
62 ValueType firstValue(
bool no_undefs=
false)
const;
63 ValueType lastValue(
bool no_undefs=
false)
const;
64 ZIntvType dahRange()
const;
65 ZType dahStep(
bool min_else_average)
const;
66 void getDahValues(ZSetType&)
const;
67 virtual void getData(ZSetType&,ValueSetType&)
const = 0;
69 PointID firstID()
const;
70 PointID lastID()
const;
71 PointID nextID(PointID)
const;
72 PointID prevID(PointID)
const;
73 PointID nearestID(ZType)
const ;
76 void setDah(PointID,ZType);
77 bool setValue(PointID,ValueType);
78 PointID setValueAt(ZType,ValueType);
81 void shiftDahFrom(PointID,ZType);
84 PointID pointIDFor(IdxType)
const;
87 ZType dahByIdx(IdxType)
const;
88 ValueType valueByIdx(IdxType)
const;
89 void removeByIdx(IdxType);
96 static ZType
dahEps() {
return 1e-5f; }
106 virtual bool doSet(IdxType,ValueType) = 0;
107 virtual PointID doInsAtDah(ZType,ValueType) = 0;
108 virtual ValueType gtVal(IdxType)
const = 0;
109 virtual void removeAux(IdxType) = 0;
110 virtual void eraseAux() = 0;
112 void doRemove(IdxType);
114 PointID doIns(ZType dh,ValueType val,ValueSetType&,
115 bool ascendingvalsonly);
116 bool doSetData(
const ZSetType&,
const ValueSetType&,
121 PointID gtNeighbourID(PointID,
bool)
const;
122 PointID gtNewPointID()
const;
123 IdxType gtIndexOf(ZType)
const;
124 IdxType gtIdx(PointID)
const;
125 ZType gtDah(IdxType)
const;
126 ValueType gtValueAt(ZType,
bool noudfs)
const;
127 static bool areEqualDahs(ZType,ZType);
145 const DahObj& dahObj()
const;
149 ValueType value()
const;
DahObj::ZType ZType
Definition: welldahobj.h:139
virtual bool valsAreCodes() const
Definition: welldahobj.h:68
#define mExpClass(module)
Definition: commondefs.h:157
DahObj::ValueType ValueType
Definition: welldahobj.h:140
static ChangeType cParsChange()
Definition: welldahobj.h:91
static ChangeType cDahChange()
Definition: welldahobj.h:93
int ChangeType
Definition: monitorable.h:80
Monitorable object with a name. All but name() are MT-safe.
Definition: namedmonitorable.h:20
Interval< ZType > ZIntvType
Definition: welldahobj.h:42
static ZType dahEps()
Definition: welldahobj.h:96
short IdxType
Definition: seisblocksdata.h:39
Interval< ValueType > ValueIntvType
Definition: welldahobj.h:48
TypeSet< ValueType > ValueSetType
Definition: welldahobj.h:47
Definition: welldahobj.h:134
static ChangeType cPointRemove()
Definition: welldahobj.h:95
float ValueType
Definition: welldahobj.h:46
bool isEmpty() const
Definition: odset.h:43
ObjectSet< T >::size_type indexOf(const ObjectSet< T > &os, const S &val)
Locate object in set.
Definition: objectset.h:173
base class for const Monitorable iterator.
Definition: monitoriter.h:83
single integer ID with comparison but no automatic conversion. Note that you will want to make a subc...
Definition: integerid.h:47
#define mDeclInstanceCreatedNotifierAccess(clss)
Definition: notify.h:235
size_type IdxType
Definition: welldahobj.h:44
I size_type
Definition: typeset.h:29
Threads::Atomic< IdxType > curptidnr_
Definition: welldahobj.h:102
Definition: wellcommon.h:16
bool isEmpty() const
Definition: welldahobj.h:56
object with a geometry defined by depth along hole.
Definition: welldahobj.h:36
TypeSet< ZType > ZSetType
Definition: welldahobj.h:41
IntegerID< IdxType > PointID
Definition: welldahobj.h:45
ZSetType dahs_
Definition: welldahobj.h:100
size_type gtSize() const
Definition: welldahobj.h:119
static ChangeType cPointAdd()
Definition: welldahobj.h:92
DahObj::PointID PointID
Definition: welldahobj.h:138
size_type size() const
Definition: typeset.h:263
TypeSet< PointID > ptids_
Definition: welldahobj.h:101
static ChangeType cValueChange()
Definition: welldahobj.h:94
float ZType
Definition: welldahobj.h:40
ZSetType::size_type size_type
Definition: welldahobj.h:43
FixedString ID()
Definition: keystrs.h:71
#define mDeclAbstractMonitorableAssignment(clss)
Monitorable subclasses: assignment and comparison.
Definition: monitor.h:105
IdxType gtIsEmpty() const
Definition: welldahobj.h:120