OpendTect  7.0
Public Types | Public Member Functions | Protected Member Functions | Static Protected Member Functions | List of all members
RefObjectSet< T > Class Template Reference
Inheritance diagram for RefObjectSet< T >:
[legend]

Public Types

typedef ObjectSet< T >::idx_type idx_type
 
typedef ObjectSet< T >::size_type size_type
 
- Public Types inherited from ManagedObjectSetBase< T >
typedef ObjectSet< T >::idx_type idx_type
 
typedef ObjectSet< T >::size_type size_type
 
- Public Types inherited from ObjectSet< T >
typedef impl_type::const_iterator const_iterator
 
typedef const value_typeconst_reference
 
typedef size_type difference_type
 
typedef size_type idx_type
 
typedef impl_type::iterator iterator
 
typedef T object_type
 
typedef value_typereference
 
typedef int size_type
 
typedef T * value_type
 

Public Member Functions

 RefObjectSet ()
 
 RefObjectSet (const ObjectSet< T > &)
 
 RefObjectSet (const RefObjectSet< T > &)
 
RefObjectSetclone () const override
 
void insertAt (T *, idx_type) override
 
RefObjectSet< T > & operator= (const ObjectSet< T > &)
 
T * replace (idx_type, T *) override
 
- Public Member Functions inherited from ManagedObjectSetBase< T >
void erase () override
 
bool isManaged () const override
 
ManagedObjectSetBase< T > & operator-= (T *) override
 
T * pop () override
 
virtual T * removeAndTake (idx_type, bool kporder=true)
 
void removeRange (idx_type, idx_type) override
 
T * removeSingle (idx_type, bool kporder=true) override
 
- Public Member Functions inherited from ObjectSet< T >
 ObjectSet ()
 
 ObjectSet (const ObjectSet &)
 
 ObjectSet (T *)
 
 ObjectSet (T *, T *)
 
 ObjectSet (T *, T *, T *)
 
virtual ~ObjectSet ()
 
ObjectSetadd (T *t)
 
bool addIfNew (T *)
 
void allowNull (bool yn=true)
 
virtual void append (const ObjectSet &)
 
iterator begin ()
 
const_iterator begin () const
 
const_iterator cbegin () const
 
const_iterator cend () const
 
virtual void copy (const ObjectSet &)
 
bool empty () const
 
iterator end ()
 
const_iterator end () const
 
void erase () override
 
T * first ()
 
const T * first () const
 
virtual T * get (const T *) const
 check & unconst More...
 
virtual T * get (idx_type)
 
virtual const T * get (idx_type) const
 
idx_type getIdx (const_iterator it) const
 
idx_type getIdx (iterator it) const
 
virtual idx_type indexOf (const T *) const
 
virtual void insertAfter (T *newptr, idx_type)
 
virtual bool isPresent (const T *) const
 
T * last ()
 
const T * last () const
 
size_type max_size () const
 
std::int64_t nrItems () const override
 
bool nullAllowed () const
 
bool operator!= (const ObjectSet &oth) const
 
ObjectSetoperator+= (T *t)
 
ObjectSetoperator= (const ObjectSet &)
 
bool operator== (const ObjectSet &) const
 
const T * operator[] (const T *t) const
 
T * operator[] (idx_type i)
 
const T * operator[] (idx_type i) const
 
void plainErase ()
 
void push (T *t)
 
void reverse () override
 
void setNullAllowed (bool yn=true)
 
size_type size () const
 
void swap (idx_type, idx_type)
 
void swap (ObjectSet &oth)
 
void swapItems (std::int64_t i1, std::int64_t i2) override
 
void useIndexes (const idx_type *)
 
bool validIdx (std::int64_t) const override
 
- Public Member Functions inherited from OD::Set
virtual ~Set ()
 
bool isEmpty () const
 
void setEmpty ()
 

Protected Member Functions

ObjectSet< T > & doAdd (T *) override
 
- Protected Member Functions inherited from ManagedObjectSetBase< T >
 ManagedObjectSetBase (PtrFunc delfunc)
 
 ~ManagedObjectSetBase ()
 

Static Protected Member Functions

static void unRef (T *ptr)
 

Additional Inherited Members

- Static Public Member Functions inherited from OD::Set
static std::int32_t maxIdx32 ()
 
static std::int64_t maxIdx64 ()
 
- Protected Types inherited from ManagedObjectSetBase< T >
typedef void(* PtrFunc) (T *ptr)
 
- Protected Types inherited from ObjectSet< T >
typedef VectorAccess< T *, size_typeimpl_type
 
- Protected Attributes inherited from ObjectSet< T >
bool allow0_ = false
 
impl_type vec_
 

Detailed Description

template<class T>
class RefObjectSet< T >

ObjectSet for reference counted objects. All members are referenced once when added to the set, and unreffed when removed from the set.

<>

Member Typedef Documentation

◆ idx_type

template<class T >
typedef ObjectSet<T>::idx_type RefObjectSet< T >::idx_type

◆ size_type

template<class T >
typedef ObjectSet<T>::size_type RefObjectSet< T >::size_type

Constructor & Destructor Documentation

◆ RefObjectSet() [1/3]

template<class T >
RefObjectSet< T >::RefObjectSet
inline

◆ RefObjectSet() [2/3]

template<class T >
RefObjectSet< T >::RefObjectSet ( const RefObjectSet< T > &  os)
inline

◆ RefObjectSet() [3/3]

template<class T >
RefObjectSet< T >::RefObjectSet ( const ObjectSet< T > &  os)
inline

Member Function Documentation

◆ clone()

template<class T >
RefObjectSet* RefObjectSet< T >::clone ( ) const
inlineoverridevirtual

Reimplemented from ObjectSet< T >.

◆ doAdd()

template<class T >
ObjectSet< T > & RefObjectSet< T >::doAdd ( T *  ptr)
inlineoverrideprotectedvirtual

Reimplemented from ObjectSet< T >.

◆ insertAt()

template<class T >
void RefObjectSet< T >::insertAt ( T *  ptr,
idx_type  vidx 
)
inlineoverridevirtual

Reimplemented from ObjectSet< T >.

◆ operator=()

template<class T >
RefObjectSet< T > & RefObjectSet< T >::operator= ( const ObjectSet< T > &  os)
inline

◆ replace()

template<class T >
T * RefObjectSet< T >::replace ( idx_type  vidx,
T *  ptr 
)
inlineoverridevirtual

Deletes entry and returns nullptr

Reimplemented from ManagedObjectSetBase< T >.

◆ unRef()

template<class T >
static void RefObjectSet< T >::unRef ( T *  ptr)
inlinestaticprotected

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