There are 10 message types and they are described in the table below.
Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 Message type | Abbreviation | #define constant | MeaningWidth1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 |
Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 Verbose | VERBOSE | _PB_VERBOSE* | Basic logging of clutter. Dumping function args, vars, etc.Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 |
Informational | INFO | _PB_INFO* | Basic logging of events.Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 |
Status | STATUS | _PB_STATUS | Basic logging of significant events.Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 |
Warning | WARNING | _PB_WARNING | User or system errors(?), bad function return codes(?), etc.Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 |
Error | ERROR | _PB_ERROR | User or system errors, bad function return codes, etc.Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 |
Bug | BUG | _PB_BUG | Actual bugs. Invalid parms, out of bound array indices, etc.Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 |
Regression test | REGTEST | _PB_REGTEST | Used specifically and solely for before/after regression testing.Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 |
Comment | COMMENT | _PB_COMMENT | Used internally and by PBLog.exe to insert user comments.Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 |
Internal | INTERNAL | _PB_INTERNAL | Internal message from Paul Bunyan. Out of memory, sem failed, etc.Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 |
User defined | USER | _PB_USER** | Used to create custom user messages.Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 |
Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 Invalid | INVALID | _PB_INVALID | Messages with invalid message types are converted to this type.Width1Width3Width1728 Width3Width1440 Width3Width1800 Width3Width6390 |
*Messages of type VERBOSE and INFO are by default prefiltered out by the C++ classes in builds where PB_DEBUG_LEVEL is set to 1. This is governed by the PB_DEFAULT_EXCLUDE macro and is overridable.
**User messages have the lower 16 bits zero and the upper 16 bits non-zero. User messages are displayed in the viewer as ‘Unnn’, passed to message handlers in whole, and defined in the following manner:
#define _MY_USR_MSG1 0x00010000
#define _MY_USR_MSG2 PB_USER(0x2)