#include <MsgTripWire.h>
Public Member Functions | |
| MsgTripWire () | |
| ~MsgTripWire () | |
| void | SetTripWire (int recordSet, int node=0, int call=0, Msg::LogLevel_t level=0) |
| void | StartRecordSet () |
| void | StartNode () |
| void | StartCall () |
| bool | IsActive () const |
| bool | SuppressMessage () const |
| Msg::LogLevel_t | GetLogLevel () const |
| std::string | GetMessagePrefix () const |
| ...................................................................... | |
| void | Print (std::ostream &os) const |
Static Public Member Functions | |
| MsgTripWire & | Instance () |
Private Member Functions | |
| void | Activated () const |
| Dummy function called as trip wire is activated. | |
| void | CheckTripWire () |
Private Attributes | |
| bool | fIsActive |
| True if tripwire has been set and triggered. | |
| bool | fIsEnabled |
| True if tripwire has been set. | |
| Msg::LogLevel_t | fLogLevel |
| Log level set once trip wire has been triggered. | |
| int | fCurrentRecordSet |
| int | fCurrentNode |
| Current node counter (reset every record set). | |
| int | fCurrentCall |
| Current call counter (reset every node). | |
| int | fTripRecordSet |
| Tripwire record set. | |
| int | fTripNode |
| Tripwire call. | |
| int | fTripCall |
| Tripwire node. | |
Static Private Attributes | |
| MsgTripWire | fgTheTripWire |
| The singleton instance. | |
|
|
Definition at line 24 of file MsgTripWire.cxx. References CheckTripWire(), fIsEnabled, fTripCall, fTripNode, and fTripRecordSet. 00024 : 00025 fIsActive(false), 00026 fIsEnabled(false), 00027 fCurrentRecordSet(0), 00028 fCurrentNode(0), 00029 fCurrentCall(0), 00030 fTripRecordSet(999999999), 00031 fTripNode(0) 00032 { 00033 00034 // Check for environmental setting - this allows trip wire to be activated 00035 // from instantiation, long before any script gets run. 00036 const char* env = getenv("ENV_MSG_TRIP_WIRE"); 00037 if ( env ) { 00038 fIsEnabled = true; 00039 std::istringstream is(env); 00040 is >> fTripRecordSet >> fTripNode >> fTripCall >> fLogLevel; 00041 fIsEnabled = true; 00042 this->CheckTripWire(); 00043 } 00044 }
|
|
|
Definition at line 48 of file MsgTripWire.cxx. 00049 {
00050 }
|
|
|
Dummy function called as trip wire is activated.
Definition at line 54 of file MsgTripWire.cxx. References fCurrentCall, fCurrentNode, and fCurrentRecordSet. Referenced by CheckTripWire(). 00054 {
00055
00056 std::cout << "Debug: Trip Wire activated."
00057 << " RecordSet: " << fCurrentRecordSet
00058 << " Node: " << fCurrentNode
00059 << " Call: " << fCurrentCall << std::endl;
00060 }
|
|
|
Definition at line 64 of file MsgTripWire.cxx. References Activated(), fCurrentCall, fCurrentNode, fCurrentRecordSet, fIsActive, fTripCall, and fTripNode. Referenced by MsgTripWire(). 00064 {
00065
00066 // Has trip-wire record set just occurred?
00067 if ( fCurrentCall == fTripCall
00068 && fCurrentNode == fTripNode
00069 && fCurrentCall == fTripCall ) this->Activated();
00070
00071 // Has the trip-wire record set been passed?
00072 if ( fCurrentRecordSet < fTripRecordSet ) return;
00073 if ( fCurrentRecordSet > fTripRecordSet ) {
00074 fIsActive = fIsEnabled;
00075 return;
00076 }
00077 if ( fCurrentNode < fTripNode ) return;
00078 if ( fCurrentNode > fTripNode ) {
00079 fIsActive = fIsEnabled;
00080 return;
00081 }
00082 if ( fCurrentCall >= fTripCall ) fIsActive = fIsEnabled;
00083
00084 }
|
|
|
Definition at line 59 of file MsgTripWire.h. Referenced by MsgService::Instance(). 00059 { return fLogLevel; }
|
|
|
......................................................................
Definition at line 88 of file MsgTripWire.cxx. References fCurrentCall, fCurrentNode, and fCurrentRecordSet. Referenced by MsgStream::operator()(). 00089 {
00090 //======================================================================
00091 // Purpose: Assemble a message prefix.
00092 //======================================================================
00093
00094 if ( ! fIsActive ) return "";
00095 std::ostringstream os;
00096 os << fCurrentRecordSet << ":" << fCurrentNode << ":" << fCurrentCall << ":";
00097 return os.str();
00098
00099 }
|
|
|
Definition at line 25 of file MsgTripWire.h. Referenced by JobCPath::Execute(), MsgService::Instance(), and JobCPath::Run(). 00025 { return fgTheTripWire; }
|
|
|
Definition at line 57 of file MsgTripWire.h. Referenced by MsgService::Instance(), and MsgStream::operator()(). 00057 { return fIsActive; }
|
|
|
Definition at line 103 of file MsgTripWire.cxx. References fCurrentCall, fCurrentNode, fCurrentRecordSet, fIsActive, fIsEnabled, fTripNode, and fTripRecordSet. 00104 {
00105 //======================================================================
00106 // Purpose:Print state
00107 //======================================================================
00108
00109 os << "MsgTripWire: Enabled: " << fIsEnabled << " Active: " << fIsActive
00110 << " current state: " << fCurrentRecordSet << ":" << fCurrentNode << ":" << fCurrentCall
00111 << " tripwire " << fTripRecordSet << ":" << fTripNode << std::endl;
00112
00113 }
|
|
||||||||||||||||||||
|
Definition at line 29 of file MsgTripWire.h. 00029 {
00030 fIsEnabled = true;
00031 fTripRecordSet = recordSet;
00032 fTripNode = node;
00033 fTripCall = call;
00034 fLogLevel = level;
00035 this->CheckTripWire();
00036 }
|
|
|
Definition at line 50 of file MsgTripWire.h. Referenced by MsgStream::operator()(). 00050 {
00051 ++fCurrentCall;
00052 this->CheckTripWire();
00053 }
|
|
|
Definition at line 45 of file MsgTripWire.h. Referenced by JobCPath::Execute(). 00045 {
00046 ++fCurrentNode;
00047 fCurrentCall = 1;
00048 this->StartCall();
00049 }
|
|
|
Definition at line 40 of file MsgTripWire.h. Referenced by JobCPath::Run(). 00040 {
00041 ++fCurrentRecordSet;
00042 fCurrentNode = -1;
00043 this->StartNode();
00044 }
|
|
|
Definition at line 58 of file MsgTripWire.h. Referenced by MsgStream::operator()(). 00058 { return fIsEnabled && ! fIsActive; }
|
|
|
Current call counter (reset every node).
Definition at line 80 of file MsgTripWire.h. Referenced by Activated(), CheckTripWire(), GetMessagePrefix(), and Print(). |
|
|
Current node counter (reset every record set).
Definition at line 79 of file MsgTripWire.h. Referenced by Activated(), CheckTripWire(), GetMessagePrefix(), and Print(). |
|
|
Current record set counter (each call to a JobCInputModule reads a new record set). Definition at line 77 of file MsgTripWire.h. Referenced by Activated(), CheckTripWire(), GetMessagePrefix(), and Print(). |
|
|
The singleton instance.
Definition at line 19 of file MsgTripWire.cxx. |
|
|
True if tripwire has been set and triggered.
Definition at line 73 of file MsgTripWire.h. Referenced by CheckTripWire(), and Print(). |
|
|
True if tripwire has been set.
Definition at line 74 of file MsgTripWire.h. Referenced by MsgTripWire(), and Print(). |
|
|
Log level set once trip wire has been triggered.
Definition at line 76 of file MsgTripWire.h. |
|
|
Tripwire node.
Definition at line 83 of file MsgTripWire.h. Referenced by CheckTripWire(), and MsgTripWire(). |
|
|
Tripwire call.
Definition at line 82 of file MsgTripWire.h. Referenced by CheckTripWire(), MsgTripWire(), and Print(). |
|
|
Tripwire record set.
Definition at line 81 of file MsgTripWire.h. Referenced by MsgTripWire(), and Print(). |
1.3.9.1