OCC Main Page | FoundationClasses | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

FoundationClasses
TKernel
NCollection


FoundationClasses
TKernel
NCollection


NCollection_IndexedMap< TheKeyType > Class Template Reference

#include <NCollection_IndexedMap.hxx>

Inheritance diagram for NCollection_IndexedMap< TheKeyType >:

Inheritance graph
[legend]

Public Member Functions

 NCollection_IndexedMap (const Standard_Integer NbBuckets=1, const Handle(NCollection_BaseAllocator)&theAllocator=0L)
 Constructor.
 NCollection_IndexedMap (const NCollection_IndexedMap &theOther)
 Copy constructor.
virtual void Assign (const NCollection_BaseCollection< TheKeyType > &theOther)
 Assign another collection.
NCollection_IndexedMapoperator= (const NCollection_IndexedMap &theOther)
 = another map
void ReSize (const Standard_Integer N)
 ReSize.
Standard_Integer Add (const TheKeyType &theKey1)
 Add.
Standard_Boolean Contains (const TheKeyType &theKey1) const
 Contains.
void Substitute (const Standard_Integer theIndex, const TheKeyType &theKey1)
 Substitute.
void RemoveLast (void)
 RemoveLast.
const TheKeyType & FindKey (const Standard_Integer theKey2) const
 FindKey.
const TheKeyType & operator() (const Standard_Integer theKey2) const
 operator ()
Standard_Integer FindIndex (const TheKeyType &theKey1) const
 FindIndex.
void Clear (const Standard_Boolean doReleaseMemory=Standard_True)
 Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.
void Clear (const Handle(NCollection_BaseAllocator)&theAllocator)
 Clear data and reset allocator.
 ~NCollection_IndexedMap (void)
 Destructor.
virtual Standard_Integer Size (void) const
 Size.

Private Member Functions

virtual TYPENAME NCollection_BaseCollection<
TheKeyType >::Iterator
CreateIterator (void) const
 Creates Iterator for use on BaseCollection.

Data Structures

class  IndexedMapNode
class  Iterator

Detailed Description

template<class TheKeyType>
class NCollection_IndexedMap< TheKeyType >

Purpose: An indexed map is used to store keys and to bind an index to them. Each new key stored in the map gets an index. Index are incremented as keys are stored in the map. A key can be found by the index and an index by the key. No key but the last can be removed so the indices are in the range 1..Extent. See the class Map from NCollection for a discussion about the number of buckets.


Constructor & Destructor Documentation

template<class TheKeyType>
NCollection_IndexedMap< TheKeyType >::NCollection_IndexedMap const Standard_Integer  NbBuckets = 1,
const Handle(NCollection_BaseAllocator)&  theAllocator = 0L
[inline]
 

template<class TheKeyType>
NCollection_IndexedMap< TheKeyType >::NCollection_IndexedMap const NCollection_IndexedMap< TheKeyType > &  theOther  )  [inline]
 

template<class TheKeyType>
NCollection_IndexedMap< TheKeyType >::~NCollection_IndexedMap void   )  [inline]
 


Member Function Documentation

template<class TheKeyType>
Standard_Integer NCollection_IndexedMap< TheKeyType >::Add const TheKeyType &  theKey1  )  [inline]
 

template<class TheKeyType>
virtual void NCollection_IndexedMap< TheKeyType >::Assign const NCollection_BaseCollection< TheKeyType > &  theOther  )  [inline, virtual]
 

template<class TheKeyType>
void NCollection_IndexedMap< TheKeyType >::Clear const Handle(NCollection_BaseAllocator)&  theAllocator  )  [inline]
 

template<class TheKeyType>
void NCollection_IndexedMap< TheKeyType >::Clear const Standard_Boolean  doReleaseMemory = Standard_True  )  [inline]
 

template<class TheKeyType>
Standard_Boolean NCollection_IndexedMap< TheKeyType >::Contains const TheKeyType &  theKey1  )  const [inline]
 

template<class TheKeyType>
virtual TYPENAME NCollection_BaseCollection<TheKeyType>::Iterator& NCollection_IndexedMap< TheKeyType >::CreateIterator void   )  const [inline, private, virtual]
 

Implements NCollection_BaseCollection< TheKeyType >.

template<class TheKeyType>
Standard_Integer NCollection_IndexedMap< TheKeyType >::FindIndex const TheKeyType &  theKey1  )  const [inline]
 

template<class TheKeyType>
const TheKeyType& NCollection_IndexedMap< TheKeyType >::FindKey const Standard_Integer  theKey2  )  const [inline]
 

template<class TheKeyType>
const TheKeyType& NCollection_IndexedMap< TheKeyType >::operator() const Standard_Integer  theKey2  )  const [inline]
 

template<class TheKeyType>
NCollection_IndexedMap& NCollection_IndexedMap< TheKeyType >::operator= const NCollection_IndexedMap< TheKeyType > &  theOther  )  [inline]
 

template<class TheKeyType>
void NCollection_IndexedMap< TheKeyType >::RemoveLast void   )  [inline]
 

template<class TheKeyType>
void NCollection_IndexedMap< TheKeyType >::ReSize const Standard_Integer  N  )  [inline]
 

template<class TheKeyType>
virtual Standard_Integer NCollection_IndexedMap< TheKeyType >::Size void   )  const [inline, virtual]
 

Implements NCollection_BaseCollection< TheKeyType >.

template<class TheKeyType>
void NCollection_IndexedMap< TheKeyType >::Substitute const Standard_Integer  theIndex,
const TheKeyType &  theKey1
[inline]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:12:57 2008 for OpenCASCADE by  doxygen 1.4.1