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.
|
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].
|
Tiny class for extended handling of error / execution status of algorithm in universal way.
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.
The flags are grouped in semantic groups:
- No flags means nothing done
- Done flags correspond to some operation succesffuly completed
- Warning flags correspond to warning messages on some potentially wrong situation, not harming algorithm execution
- Alarm flags correspond to more severe warnings about incorrect user data, while not breaking algorithm execution
- Fail flags correspond to cases when algorithm failed to complete