![]() |
Gray C++ Libraries
0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
|
#include <cUID.h>
Public Member Functions | |
cUIDRangeMask (UID_t nUIDMaskType=0x80000000, UID_t nUIDMaskIndex=0x7FFFFFFF, UIDINDEX_t dwIndexStart=1) | |
void | InitRangeMask (UID_t nUIDMaskType, UID_t nUIDMaskIndex, UIDINDEX_t dwIndexStart=1) |
bool | isValidRangeMask () const noexcept |
bool | IsValidQty (UIDINDEX_t index) const noexcept |
bool | IsValidIndex (UIDINDEX_t index) const noexcept |
bool | IsValidUID (UID_t uid) const noexcept |
UIDINDEX_t | U2I_NoCheck (UID_t uid) const noexcept |
UIDINDEX_t | U2I (UID_t uid) const |
UID_t | I2U (UIDINDEX_t index) const |
Public Attributes | |
UID_t | m_nUIDMaskType |
'or' this onto UID to mark type. high bits outside range. More... | |
UID_t | m_nUIDMaskIndex |
'and' bits for index range. ex. 0xffff More... | |
UIDINDEX_t | m_nIndexStart |
Start of non static indexes. inside m_nUIDMaskIndex. typically 1. More... | |
General characteristic info for a range/partition of UID's Reserve index = 0 for special null case. allow segmentation of the UID_t range into type based ranges. Used by cXObjTypeDef.
|
inline |
default mask is minimally range restricted. We may not know the proper m_nUIDMaskType until cXObjTypeDef are all registered.
|
inline |
convert an index to a dressed UID_t.
|
inline |
|
inlinenoexcept |
Index must not overflow the UID_t mask.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Is the UID_t in the specific range ?
|
inline |
convert a dressed UID_t to an UIDINDEX_t. ASSUME isValidUID(UID).
|
inlinenoexcept |
convert a dressed UID to an index. ASSUME isValidUID(UID).
UIDINDEX_t GrayLib::cUIDRangeMask::m_nIndexStart |
Start of non static indexes. inside m_nUIDMaskIndex. typically 1.
UID_t GrayLib::cUIDRangeMask::m_nUIDMaskIndex |
'and' bits for index range. ex. 0xffff
UID_t GrayLib::cUIDRangeMask::m_nUIDMaskType |
'or' this onto UID to mark type. high bits outside range.