00001 #ifndef MessageLogger_MessageDrop_h 00002 #define MessageLogger_MessageDrop_h 00003 00004 // -*- C++ -*- 00005 // 00006 // Package: MessageLogger 00007 // Class : MessageDrop 00008 // 00018 // 00019 // Original Author: M. Fischler and Jim Kowalkowski 00020 // Created: Tues Feb 14 16:38:19 CST 2006 00021 // $Id: MessageDrop.h,v 1.11 2008/06/20 20:55:46 fischler Exp $ 00022 // 00023 00024 // Framework include files 00025 00026 #include "FWCore/Utilities/interface/EDMException.h" // change log 4 00027 00028 00029 // system include files 00030 00031 #include <string> 00032 00033 // Change log 00034 // 00035 // 1 mf 5/12/06 initialize debugEnabled to true, to avoid unitialized 00036 // data detection in memory checks (and to be safe in 00037 // getting enabled output independant of timings) 00038 // 00039 // 4 mf 2/22/07 static ex_p to have a way to convey exceptions to throw 00040 // (this is needed when configuring could lead to an 00041 // exception, for example) 00042 // 00043 // 5 mf 2/22/07 jobreport_name to have a way to convey content 00044 // of jobreport option from cmsRun to MessageLogger class 00045 // 00046 // 6 mf 6/18/07 jobMode to have a way to convey choice of hardwired 00047 // MessageLogger defaults 00048 // 00049 // 7 mf 6/20/08 MessageLoggerScribeIsRunning to let the scribe convey 00050 // that it is active. 00051 00052 // user include files 00053 00054 namespace edm { 00055 00056 struct MessageDrop { 00057 private: 00058 MessageDrop() 00059 : moduleName ("") 00060 , runEvent("pre-events") 00061 , jobreport_name() // change log 5 00062 , jobMode("") // change log 6 00063 , debugEnabled(true) // change log 1 00064 , infoEnabled(true) // change log 3 00065 , warningEnabled(true) // change log 3 00066 { } 00067 public: 00068 static MessageDrop * instance (); 00069 std::string moduleName; 00070 std::string runEvent; 00071 std::string jobreport_name; // change log 5 00072 std::string jobMode; // change log 6 00073 bool debugEnabled; 00074 bool infoEnabled; 00075 bool warningEnabled; 00076 static unsigned char messageLoggerScribeIsRunning; // change log 7 00077 static edm::Exception * ex_p; // change log 4 00078 }; 00079 00080 static const unsigned char MLSCRIBE_RUNNING_INDICATOR = 29; // change log 7 00081 00082 } // end of namespace edm 00083 00084 00085 #endif // MessageLogger_MessageDrop_h