#include <NCollection_SparseArrayBase.hxx>
Inheritance diagram for NCollection_SparseArrayBase:
Public Member Functions | |
Type-independent public interface | |
Standard_EXPORT void | Clear () |
Clears all the data. | |
Standard_Integer | Size () const |
Returns number of currently contained items. | |
Standard_EXPORT Standard_Boolean | HasValue (const Standard_Integer theIndex) const |
Check whether the value at given index is set. | |
Standard_EXPORT Standard_Boolean | UnsetValue (const Standard_Integer theIndex) |
Deletes the item from the array; returns True if that item was defined. | |
Protected Member Functions | |
NCollection_SparseArrayBase (Standard_Size theItemSize, Standard_Size theBlockSize) | |
Constructor; initialized by size of item and of block (in items). | |
virtual | ~NCollection_SparseArrayBase () |
Destructor. | |
Block | getBlock (const Standard_Address theAddr) const |
Creates Block structure for block pointed by theAddr. | |
Standard_Address | getItem (const Block &theBlock, Standard_Size theInd) const |
Find address of the item in the block by index (in the block). | |
Standard_Address | getValue (const Standard_Integer theIndex) const |
Direct const access to the item. | |
Standard_EXPORT Standard_Address | setValue (const Standard_Integer theIndex, const Standard_Address theValue) |
Set a value to the specified item; returns address of the set item. | |
Standard_EXPORT Standard_Address | changeValue (const Standard_Integer theIndex) |
Modification access to the item; allocates necessary space and marks the item as defined. | |
Standard_EXPORT void | assign (const NCollection_SparseArrayBase &theOther) |
Copy contents of theOther to this; assumes that this and theOther have exactly the same type of arguments. | |
Standard_EXPORT void | exchange (NCollection_SparseArrayBase &theOther) |
Exchange contents of theOther and this; assumes that this and theOther have exactly the same type of arguments. | |
virtual void | createItem (Standard_Address theAddress, Standard_Address theOther)=0 |
Create new item at the specified address with copy constructor from existing item. | |
virtual void | destroyItem (Standard_Address theAddress)=0 |
Call destructor to the item. | |
virtual void | copyItem (Standard_Address theAddress, Standard_Address theOther)=0 |
Call assignment operator to the item. | |
Protected Attributes | |
Standard_Size | myItemSize |
size of item | |
Standard_Size | myBlockSize |
block size (in items) | |
Standard_Size | myNbBlocks |
allocated size of blocks table | |
Standard_Size | mySize |
number of currently defined items | |
Standard_Address * | myData |
array of pointers to data blocks | |
Private Member Functions | |
NCollection_SparseArrayBase (const NCollection_SparseArrayBase &) | |
void | operator= (const NCollection_SparseArrayBase &) |
void | allocData (const Standard_Size iBlock) |
Allocate space for at least iBlock+1 blocks. | |
void | freeBlock (const Standard_Size iBlock) |
Free specified block. | |
Data Structures | |
class | Block |
class | Iterator |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Implemented in NCollection_SparseArray< TheItemType >. |
|
Implemented in NCollection_SparseArray< TheItemType >. |
|
Implemented in NCollection_SparseArray< TheItemType >. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|