|
Advanced: Iteration and analysis of status flags |
enum | StatusRange { FirstStatus = 1,
StatusesPerType = 32,
NbStatuses = 128,
LastStatus = 129
} |
| Definitions of range of available statuses. More...
|
static Standard_Integer | StatusIndex (Message_Status status) |
| Returns index of status in whole range [FirstStatus, LastStatus].
|
static Standard_Integer | LocalStatusIndex (Message_Status status) |
| Returns index of status inside type of status (Done or Warn or, etc) in range [1, StatusesPerType].
|
static Message_StatusType | TypeOfStatus (Message_Status status) |
| Returns status type (DONE, WARN, ALARM, or FAIL).
|
static Message_Status | StatusByIndex (const Standard_Integer theIndex) |
| Returns status with index theIndex in whole range [FirstStatus, LastStatus].
|
Public Member Functions |
|
| Message_ExecStatus () |
| Create empty execution status.
|
| Message_ExecStatus (Message_Status status) |
| Initialise the execution status.
|
void | Set (Message_Status status) |
| Sets a status flag.
|
Standard_Boolean | IsSet (Message_Status status) const |
| Check status for being set.
|
void | Clear (Message_Status status) |
| Clear one status.
|
|
Standard_Boolean | IsDone () const |
| Check if at least one status of each type is set.
|
Standard_Boolean | IsFail () const |
| Check if at least one status of each type is set.
|
Standard_Boolean | IsWarn () const |
| Check if at least one status of each type is set.
|
Standard_Boolean | IsAlarm () const |
| Check if at least one status of each type is set.
|
void | SetAllDone () |
| Set all statuses of each type.
|
void | SetAllWarn () |
| Check if at least one status of each type is set.
|
void | SetAllAlarm () |
| Check if at least one status of each type is set.
|
void | SetAllFail () |
| Check if at least one status of each type is set.
|
void | ClearAllDone () |
| Clear all statuses of each type.
|
void | ClearAllWarn () |
| Check if at least one status of each type is set.
|
void | ClearAllAlarm () |
| Check if at least one status of each type is set.
|
void | ClearAllFail () |
| Check if at least one status of each type is set.
|
void | Clear () |
| Clear all statuses.
|
void | Add (const Message_ExecStatus &theOther) |
| Add statuses to me from theOther execution status.
|
const Message_ExecStatus & | operator|= (const Message_ExecStatus &theOther) |
| Check if at least one status of each type is set.
|
void | And (const Message_ExecStatus &theOther) |
| Leave only the statuses common with theOther.
|
const Message_ExecStatus & | operator &= (const Message_ExecStatus &theOther) |
| Check if at least one status of each type is set.
|
Private Types |
enum | StatusMask { MType = 0x0000ff00,
MIndex = 0x000000ff
} |
| Mask to separate bits indicating status type and index within the type. More...
|
Static Private Member Functions |
static int | getBitFlag (int status) |
Private Attributes |
Standard_Integer | myDone |
Standard_Integer | myWarn |
Standard_Integer | myAlarm |
Standard_Integer | myFail |
It is in fact a set of integers represented as a collection of bit flags for each of four types of status; each status flag has its own symbolic name and can be set/tested individually.