Public Types | |
| typedef unsigned char | Cell |
| type of items used to hold bits | |
Public Member Functions | |
| Block (const Standard_Address theAddr, const Standard_Size theNbItems, const Standard_Size theItemSize) | |
| Initializes the block by pointer to block data. | |
| Cell | Set (Standard_Size i) |
| Set bit for i-th item; returns non-null if that bit has not been set previously. | |
| Cell | IsSet (Standard_Size i) |
| Check bit for i-th item; returns non-null if that bit is set. | |
| Cell | Unset (Standard_Size i) |
| Unset bit for i-th item; returns non-null if that bit has been set previously. | |
Static Public Member Functions | |
| static Standard_Size | BitsPerCell () |
| Number of bits in each cell. | |
| static Standard_Size | Size (const Standard_Size theNbItems, const Standard_Size theItemSize) |
| Compute required size for block data, in bytes. | |
| static char * | ToArray (const Standard_Address theAddress, const Standard_Size, const Standard_Size) |
| Returns address of array from address of block. | |
Data Fields | |
| Standard_Size * | Count |
| items counter | |
| Standard_Address | Array |
| pointer to the data items array | |
| Cell * | Bits |
| bit map for defined/undefined flags | |
The Block structure provides a logical view on the block, and provides methods to work with bit map.
Note that NCollection_SparseArrayBase class takes responsibility for correct allocation/deallocation of all the data.
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1.4.1