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