#include <NCollection_BaseCollection.hxx>
Inheritance diagram for NCollection_BaseCollection< TheItemType >:
Public Member Functions | |
NCollection_BaseCollection (const Handle(NCollection_BaseAllocator)&theAllocator=0L) | |
Common for all collections constructor takes care of theAllocator. | |
virtual Standard_Integer | Size (void) const =0 |
Number of items. | |
virtual void | Assign (const NCollection_BaseCollection &theOther)=0 |
Virtual assignment. | |
virtual Iterator & | CreateIterator (void) const =0 |
Method to create iterators for base collections. | |
virtual | ~NCollection_BaseCollection (void) |
Destructor - must be implemented to release the memory. | |
Protected Member Functions | |
const | Handle (NCollection_BaseAllocator)&IterAllocator(void) const |
Handle (NCollection_BaseAllocator) myAllocator | |
Private Member Functions | |
Handle (NCollection_BaseAllocator) myIterAllocator | |
Data Structures | |
class | Iterator |
NCollection is a nocdlpack, thus it is compiled without WOK. BaseCollection allows assigning the collections of different kinds (the items type being the same) with a few obvious exclusions - one can not assign any collection to the map having double data (two keys or a key plus value). Only the maps of the very same type may be assigned through operator= Said maps are: DoubleMap, DataMap, IndexedDataMap
For the users needing control over the memory usage the allocators were added (see NCollection_BaseAllocator header) Others may forget it - BaseAllocator is used by default and then memory is managed through Standard::Allocate/::Free.
|
|
|
|
|
|
|
|
|
|
|
|
|
|