OpendTect  7.0
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
MonitorableIterBase< ITyp > Class Template Reference

base class for MonitoredObject iterators. Inherit from one of its subclasses. More...

Inheritance diagram for MonitorableIterBase< ITyp >:
[legend]

Public Types

enum  Direction { Forward , Backward }
 
typedef ITyp idx_type
 
typedef idx_type size_type
 

Public Member Functions

 MonitorableIterBase (const MonitorableIterBase &)
 
 MonitorableIterBase (const MonitoredObject &, idx_type start, idx_type stop)
 
virtual ~MonitorableIterBase ()
 
bool atFirst () const
 
bool atLast () const
 
idx_type curIdx () const
 
bool isEmpty () const
 
bool isForward () const
 
bool isPresent (idx_type) const
 
bool isValid () const
 
const MonitoredObjectmonitored () const
 
bool next ()
 
virtual void reInit ()
 
virtual void retire ()
 
size_type size () const
 

Protected Member Functions

MonitorableIterBaseoperator= (const MonitorableIterBase &)=delete
 

Protected Attributes

idx_type curidx_
 
const Direction dir_
 
const MonitoredObjectobj_
 
const idx_type startidx_
 
const idx_type stopidx_
 

Detailed Description

template<class ITyp>
class MonitorableIterBase< ITyp >

base class for MonitoredObject iterators. Inherit from one of its subclasses.

Needs a next() before a valid item is reached.

It is your responisbility to keep the MonitoredObject alive. The iterator cannot itself be used in a Multi-Threaded way.

If you pass a negative startidx or stopidx, then the iterator will be empty (no matter the value of the other idx).

<>

Member Typedef Documentation

◆ idx_type

template<class ITyp >
typedef ITyp MonitorableIterBase< ITyp >::idx_type

◆ size_type

template<class ITyp >
typedef idx_type MonitorableIterBase< ITyp >::size_type

Member Enumeration Documentation

◆ Direction

template<class ITyp >
enum MonitorableIterBase::Direction
Enumerator
Forward 
Backward 

Constructor & Destructor Documentation

◆ MonitorableIterBase() [1/2]

template<class ITyp >
MonitorableIterBase< ITyp >::MonitorableIterBase ( const MonitoredObject obj,
idx_type  start,
idx_type  stop 
)
inline

◆ MonitorableIterBase() [2/2]

template<class ITyp >
MonitorableIterBase< ITyp >::MonitorableIterBase ( const MonitorableIterBase< ITyp > &  oth)
inline

◆ ~MonitorableIterBase()

template<class ITyp >
virtual MonitorableIterBase< ITyp >::~MonitorableIterBase ( )
inlinevirtual

Member Function Documentation

◆ atFirst()

template<class ITyp >
bool MonitorableIterBase< ITyp >::atFirst ( ) const
inline

◆ atLast()

template<class ITyp >
bool MonitorableIterBase< ITyp >::atLast ( ) const
inline

◆ curIdx()

template<class ITyp >
idx_type MonitorableIterBase< ITyp >::curIdx ( ) const
inline

◆ isEmpty()

template<class ITyp >
bool MonitorableIterBase< ITyp >::isEmpty ( ) const
inline

◆ isForward()

template<class ITyp >
bool MonitorableIterBase< ITyp >::isForward ( ) const
inline

◆ isPresent()

template<class ITyp >
bool MonitorableIterBase< ITyp >::isPresent ( idx_type  idx) const
inline

◆ isValid()

template<class ITyp >
bool MonitorableIterBase< ITyp >::isValid ( ) const
inline

◆ monitored()

template<class ITyp >
const MonitoredObject& MonitorableIterBase< ITyp >::monitored ( ) const
inline

◆ next()

template<class ITyp >
bool MonitorableIterBase< ITyp >::next
inline

◆ operator=()

template<class ITyp >
MonitorableIterBase& MonitorableIterBase< ITyp >::operator= ( const MonitorableIterBase< ITyp > &  )
protecteddelete

◆ reInit()

template<class ITyp >
void MonitorableIterBase< ITyp >::reInit
inlinevirtual

◆ retire()

template<class ITyp >
virtual void MonitorableIterBase< ITyp >::retire ( )
inlinevirtual

◆ size()

template<class ITyp >
MonitorableIterBase< ITyp >::size_type MonitorableIterBase< ITyp >::size
inline

Member Data Documentation

◆ curidx_

template<class ITyp >
idx_type MonitorableIterBase< ITyp >::curidx_
protected

◆ dir_

template<class ITyp >
const Direction MonitorableIterBase< ITyp >::dir_
protected

◆ obj_

template<class ITyp >
const MonitoredObject& MonitorableIterBase< ITyp >::obj_
protected

◆ startidx_

template<class ITyp >
const idx_type MonitorableIterBase< ITyp >::startidx_
protected

◆ stopidx_

template<class ITyp >
const idx_type MonitorableIterBase< ITyp >::stopidx_
protected

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