 |
OpendTect
6.6
|
Go to the documentation of this file.
45 inline bool isEmpty()
const {
return size() < 1; }
46 inline size_type size()
const;
49 inline bool isForward()
const {
return dir_ == Forward; }
51 inline bool isValid()
const {
return isPresent(curidx_); }
52 inline bool atFirst()
const {
return curidx_ == startidx_; }
53 inline bool atLast()
const {
return curidx_ == stopidx_; }
55 inline bool isPresent(idx_type)
const;
58 virtual void reInit();
88 ITyp startidx,ITyp stopidx);
91 virtual void reInit();
92 virtual void retire();
110 template <
class ITyp>
116 ITyp startidx,ITyp stopidx);
124 inline void insertedAtCurrent();
125 inline void currentRemoved();
132 template <
class ITyp>
inline
134 ITyp startidx, ITyp stopidx )
136 , startidx_(startidx)
138 , dir_(startidx<=stopidx ? Forward : Backward)
151 template <
class ITyp>
inline
153 :
obj_(oth.monitored())
154 , startidx_(oth.startidx_)
155 , stopidx_(oth.stopidx_)
157 , curidx_(oth.curidx_)
162 template <
class ITyp>
inline
165 if ( dir_ == Forward )
166 { curidx_++;
return curidx_ <= stopidx_; }
168 { curidx_--;
return curidx_ >= stopidx_; }
172 template <
class ITyp>
inline
175 if ( dir_ == Forward )
176 return idx >= startidx_ && idx <= stopidx_;
178 return idx <= startidx_ && idx >= stopidx_;
182 template <
class ITyp>
inline typename
185 return dir_ == Forward ? stopidx_-startidx_+1 : startidx_-stopidx_+1;
189 template <
class ITyp>
inline
192 curidx_ = dir_ == Forward ? startidx_ - 1 : startidx_ + 1;
196 template <
class ITyp>
inline
198 ITyp startidx, ITyp stopidx )
205 template <
class ITyp>
inline
214 template <
class ITyp>
inline
221 template <
class ITyp>
inline
229 template <
class ITyp>
inline
231 ITyp startidx, ITyp stopidx )
237 template <
class ITyp>
inline
245 template <
class ITyp>
inline
258 template <
class ITyp>
inline
MonitorableIter4Write(MonitoredObject &, ITyp startidx, ITyp stopidx)
Definition: monitoriter.h:230
base class for non-const MonitoredObject iterator.
Definition: monitoriter.h:112
virtual void retire()
Definition: monitoriter.h:215
bool next()
Definition: monitoriter.h:163
const idx_type startidx_
Definition: monitoriter.h:64
MonitorableIterBase & operator=(const MonitorableIterBase &)=delete
size_type size() const
Definition: monitoriter.h:183
idx_type curidx_
Definition: monitoriter.h:67
protects a MonitoredObject against change.
Definition: monitoredobject.h:275
virtual void reInit()
Definition: monitoriter.h:222
bool atFirst() const
Definition: monitoriter.h:52
bool isPresent(idx_type) const
Definition: monitoriter.h:173
virtual void retire()
Definition: monitoriter.h:57
const MonitoredObject & obj_
Definition: monitoredobject.h:311
bool isValid() const
Definition: monitoriter.h:51
idx_type size_type
Definition: monitoriter.h:36
MonitorLock ml_
Definition: monitoriter.h:96
MonitorableIterBase(const MonitoredObject &, idx_type start, idx_type stop)
Definition: monitoriter.h:133
base class for MonitoredObject iterators. Inherit from one of its subclasses.
Definition: monitoriter.h:32
MonitorableIter4Read(const MonitoredObject &, ITyp startidx, ITyp stopidx)
Definition: monitoriter.h:197
const idx_type stopidx_
Definition: monitoriter.h:65
const MonitoredObject & obj_
Definition: monitoriter.h:62
@ Forward
Definition: monitoriter.h:37
MonitorableIter4Write & operator=(const MonitorableIter4Write &)=delete
virtual ~MonitorableIterBase()
Definition: monitoriter.h:42
#define mClass(module)
Definition: commondefs.h:181
ITyp idx_type
Definition: monitoriter.h:35
const Direction dir_
Definition: monitoriter.h:63
virtual void reInit()
Definition: monitoriter.h:190
bool atLast() const
Definition: monitoriter.h:53
void insertedAtCurrent()
Definition: monitoriter.h:246
MonitoredObject & edited()
Definition: monitoriter.h:119
#define mSelf()
Definition: commondefs.h:144
bool isForward() const
Definition: monitoriter.h:49
const MonitoredObject & monitored() const
Definition: monitoriter.h:43
idx_type curIdx() const
Definition: monitoriter.h:54
#define mNonConst(x)
Definition: commondefs.h:143
base class for const MonitoredObject iterator.
Definition: monitoriter.h:84
Direction
Definition: monitoriter.h:37
bool isEmpty() const
Definition: monitoriter.h:45
void currentRemoved()
Definition: monitoriter.h:259
MonitorableIter4Read & operator=(const MonitorableIter4Read &)=delete
Object that can be MT-safely monitored from cradle to grave.
Definition: monitoredobject.h:77
Generated at
for the OpendTect
seismic interpretation project.
Copyright (C): dGB Beheer B.V. 1995-2021