Public Member Functions | Protected Attributes

ObjectSet< T > Class Template Reference

Set of pointers to objects. More...

Inheritance diagram for ObjectSet< T >:
OD::Set ManagedObjectSet< T >

List of all members.

Public Member Functions

 ObjectSet ()
 ObjectSet (const ObjectSet< T > &)
virtual ~ObjectSet ()
ObjectSet< T > & operator= (const ObjectSet< T > &)
virtual bool isManaged () const
bool nullAllowed () const
void allowNull (bool yn=true)
int size () const
virtual int nrItems () const
virtual bool validIdx (int) const
virtual int indexOf (const T *) const
virtual T * operator[] (int)
virtual const T * operator[] (int) const
virtual T * operator[] (const T *) const
 check & unconst
virtual T * replace (int idx, T *)
virtual void insertAt (T *newptr, int)
virtual void insertAfter (T *newptr, int)
virtual void copy (const ObjectSet< T > &)
virtual void append (const ObjectSet< T > &)
virtual void swap (int, int)
virtual ObjectSet< T > & operator+= (T *)
virtual ObjectSet< T > & operator-= (T *)
virtual void push (T *ptr)
virtual T * pop ()
virtual void erase ()
virtual T * remove (int, bool preserve_order=true)
virtual void remove (int from, int to)
void plainErase ()

Protected Attributes

VectorAccess< void * > vec_
bool allow0_

Detailed Description

template<class T>
class ObjectSet< T >

Set of pointers to objects.

The ObjectSet does not manage the objects, it is just a collection of pointers to the the objects. If you want management, use ManagedObjectSet.


Constructor & Destructor Documentation

template<class T >
ObjectSet< T >::ObjectSet (  )  [inline]
template<class T>
ObjectSet< T >::ObjectSet ( const ObjectSet< T > &  t  )  [inline]
template<class T>
virtual ObjectSet< T >::~ObjectSet (  )  [inline, virtual]

Member Function Documentation

template<class T >
void ObjectSet< T >::allowNull ( bool  yn = true  )  [inline]
template<class T>
void ObjectSet< T >::append ( const ObjectSet< T > &  os  )  [inline, virtual]
template<class T>
void ObjectSet< T >::copy ( const ObjectSet< T > &  os  )  [inline, virtual]
template<class T>
virtual void ObjectSet< T >::erase (  )  [inline, virtual]
template<class T>
int ObjectSet< T >::indexOf ( const T *  ptr  )  const [inline, virtual]
template<class T>
void ObjectSet< T >::insertAfter ( T *  newptr,
int  idx 
) [inline, virtual]
template<class T>
void ObjectSet< T >::insertAt ( T *  newptr,
int  idx 
) [inline, virtual]
template<class T>
virtual bool ObjectSet< T >::isManaged (  )  const [inline, virtual]
template<class T>
virtual int ObjectSet< T >::nrItems (  )  const [inline, virtual]

Implements OD::Set.

template<class T>
bool ObjectSet< T >::nullAllowed (  )  const [inline]
template<class T>
ObjectSet< T > & ObjectSet< T >::operator+= ( T *  ptr  )  [inline, virtual]
template<class T>
ObjectSet< T > & ObjectSet< T >::operator-= ( T *  ptr  )  [inline, virtual]
template<class T >
T * ObjectSet< T >::operator[] ( int  idx  )  [inline, virtual]
template<class T >
const T * ObjectSet< T >::operator[] ( int  idx  )  const [inline, virtual]
template<class T>
T * ObjectSet< T >::operator[] ( const T *  t  )  const [inline, virtual]

check & unconst

template<class T>
void ObjectSet< T >::plainErase (  )  [inline]

Not virtual. Don't use casually.

template<class T >
T * ObjectSet< T >::pop (  )  [inline, virtual]
template<class T>
void ObjectSet< T >::push ( T *  ptr  )  [inline, virtual]
template<class T >
T * ObjectSet< T >::remove ( int  idx,
bool  preserve_order = true 
) [inline, virtual]
template<class T >
void ObjectSet< T >::remove ( int  from,
int  to 
) [inline, virtual]
template<class T>
T * ObjectSet< T >::replace ( int  idx,
T *  newptr 
) [inline, virtual]
template<class T>
int ObjectSet< T >::size (  )  const [inline]
template<class T >
void ObjectSet< T >::swap ( int  idx0,
int  idx1 
) [inline, virtual]

Implements OD::Set.

template<class T >
bool ObjectSet< T >::validIdx ( int  idx  )  const [inline, virtual]

Implements OD::Set.


Member Data Documentation

template<class T>
bool ObjectSet< T >::allow0_ [protected]
template<class T>
VectorAccess<void*> ObjectSet< T >::vec_ [protected]