DCMTK  Version 3.6.1 20120515
OFFIS DICOM Toolkit
Public Member Functions | Protected Attributes
OFSet< T > Class Template Reference

This abstract template class provides a data structure and operations for administrating a set of elements of an arbitrary type. More...

+ Inheritance diagram for OFSet< T >:

List of all members.

Public Member Functions

 OFSet ()
 Default constructor.
void init ()
 This function is a workaround for avoiding a compiler warning on Solaris 2.5.1 using compiler SC 2.0.1.
 OFSet (const OFSet< T > &src)
 Copy constructor.
void init (const OFSet< T > &src)
 This function is a workaround for avoiding a compiler warning on Solaris 2.5.1 using compiler SC 2.0.1.
virtual ~OFSet ()
 Destructor.
const OFSet< T > & operator= (const OFSet< T > &src)
 operator=.
virtual T & operator[] (unsigned int i) const
 Returns a certain element which is contained in the set.
virtual void Resize (unsigned int newSize)
 Resizes the set.
virtual void Clear ()
 Removes all items from the set.
virtual OFBool IsEmpty () const
 Determines if the set is an empty set.
virtual unsigned int NumberOfElements () const
 Returns the number of elements in the set.
virtual void Insert (const T &item)=0
 Inserts a new item into the set.
virtual void Remove (const T &item)=0
 Removes one item from the set.
virtual void RemoveByIndex (unsigned int idx)=0
 Removes one item from the set.
virtual T * Find (const T &item) const =0
 Tries to find a given object in the set.
virtual OFBool Contains (const T &item) const =0
 Determines if a certain item is contained in the set.

Protected Attributes

T ** items
 array containing the entries
unsigned int num
 number of entries in the set
unsigned int size
 current size of the set (always >= num)

Detailed Description

template<class T>
class OFSet< T >

This abstract template class provides a data structure and operations for administrating a set of elements of an arbitrary type.


Constructor & Destructor Documentation

template<class T >
OFSet< T >::OFSet ( const OFSet< T > &  src) [inline]

Copy constructor.

Parameters:
srcSource object of which this will be a copy.

Member Function Documentation

template<class T >
virtual OFBool OFSet< T >::Contains ( const T &  item) const [pure virtual]

Determines if a certain item is contained in the set.

Parameters:
item- Item which shall be looked for.
Returns:
OFTrue, if item is contained in the set, OFFalse otherwise.

Implemented in OFOrderedSet< T >, and OFUnorderedSet< T >.

template<class T >
virtual T* OFSet< T >::Find ( const T &  item) const [pure virtual]

Tries to find a given object in the set.

In case the specified object could be found, a pointer to the corresponding element within the set is returned; in case the specified object could not be found, NULL will be returned.

Parameters:
itemSearch pattern.
Returns:
Pointer to the corresponding element within the set or NULL.

Implemented in OFOrderedSet< T >, and OFUnorderedSet< T >.

template<class T >
virtual void OFSet< T >::Insert ( const T &  item) [pure virtual]

Inserts a new item into the set.

Parameters:
itemItem which shall be inserted into the set.

Implemented in OFUnorderedSet< T >, and OFOrderedSet< T >.

template<class T >
virtual OFBool OFSet< T >::IsEmpty ( ) const [inline, virtual]

Determines if the set is an empty set.

Returns:
OFTrue, if the set is an empty set, OFFalse otherwise.
template<class T >
virtual unsigned int OFSet< T >::NumberOfElements ( ) const [inline, virtual]

Returns the number of elements in the set.

Returns:
Number of elements in the set.
template<class T >
const OFSet<T>& OFSet< T >::operator= ( const OFSet< T > &  src) [inline]

operator=.

Parameters:
srcSource object whose values will be assigned to this.
Returns:
Reference to this.
template<class T >
virtual T& OFSet< T >::operator[] ( unsigned int  i) const [inline, virtual]

Returns a certain element which is contained in the set.

Note that the original object which actually is contained in the set will be returned, and not a copy of the object. Further note that if the specified index is out of range, a newly default constructed object of class T will be returned.

Returns:
A certain element (original) which is contained in the set.
template<class T >
virtual void OFSet< T >::Remove ( const T &  item) [pure virtual]

Removes one item from the set.

Parameters:
itemItem which shall be removed from the set.

Implemented in OFOrderedSet< T >, and OFUnorderedSet< T >.

template<class T >
virtual void OFSet< T >::RemoveByIndex ( unsigned int  idx) [pure virtual]

Removes one item from the set.

Parameters:
idxIndex of the item which shall be removed from the set.

Implemented in OFOrderedSet< T >, and OFUnorderedSet< T >.

template<class T >
virtual void OFSet< T >::Resize ( unsigned int  newSize) [inline, virtual]

Resizes the set.

If newSize is lower than the current number of elements in the set, this function doesn't do anything.

Parameters:
newSizeNew size the set is supposed to have.

The documentation for this class was generated from the following file:


Generated on Tue May 15 2012 for DCMTK Version 3.6.1 20120515 by Doxygen 1.7.5.1-20111027