CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ELtsErrorLog.h
Go to the documentation of this file.
1 #ifndef FWCore_MessageService_ELtsErrorLog_h
2 #define FWCore_MessageService_ELtsErrorLog_h
3 
4 
5 // ----------------------------------------------------------------------
6 //
7 // ELtsErrorLog is an implementation class for private derivation by
8 // ThreadSafeErrorLog.
9 //
10 // 5/31/00 mf Created file.
11 //
12 // ----------------------------------------------------------------------
13 
15 
17 
18 namespace edm {
19 namespace service {
20 
21 // ----------------------------------------------------------------------
22 // ELtsErrorLog:
23 // ----------------------------------------------------------------------
24 
25 class ELadministrator;
26 
27 class ELtsErrorLog {
28 
29 public:
30 
31 // ----------------------------------------------------------------------
32 // Birth and Death:
33 // ----------------------------------------------------------------------
34 
35  ELtsErrorLog();
36  ELtsErrorLog( const ELstring & pkgName );
37  ELtsErrorLog( const ErrorLog & ee );
38  ELtsErrorLog( const ELtsErrorLog & ee);
39 protected:
40  virtual ~ELtsErrorLog();
41 
42 // ----------------------------------------------------------------------
43 // Setup for preamble parts
44 // ----------------------------------------------------------------------
45 
46  void setSubroutine( const ELstring & subName );
47  void setModule( const ELstring & modName );
48  void setPackage( const ELstring & pkgName );
49  void setProcess( const ELstring & procName );
50 
51 // ----------------------------------------------------------------------
52 // Setup for advanced control
53 // ----------------------------------------------------------------------
54 
55  int setHexTrigger (int trigger);
59 
60 // ----------------------------------------------------------------------
61 // recovery of an ELdestControl handle
62 // ----------------------------------------------------------------------
63 
64  bool getELdestControl (const ELstring & name,
65  ELdestControl & theDestControl) const;
66 
67 // ----------------------------------------------------------------------
68 // Message Initiation
69 // ----------------------------------------------------------------------
70 
71 void initiateMsg (const ELseverityLevel& sev, const ELstring& id);
72 void initiateMsg (int debugLevel);
73 
74 // ----------------------------------------------------------------------
75 // Message Continuation:
76 // ----------------------------------------------------------------------
77 
78 public:
79  void item ( int n );
80  void item ( unsigned int n );
81  void item ( long n );
82  void item ( unsigned long n );
83  void item ( short n );
84  void item ( unsigned short n );
85  void item ( const ELstring & s );
86 
87 // ----------------------------------------------------------------------
88 // Message Completion:
89 // ----------------------------------------------------------------------
90 
91 protected:
92  bool pokeMsg ( edm::ErrorObj & msg );
93  void dispatch ( edm::ErrorObj & msg );
94 
95  // ----- member data:
96  //
97 protected:
103 
104 }; // ELtsErrorLog
105 
106 
107 // ----------------------------------------------------------------------
108 // Message Continuation:
109 // Global methods for physicists logging errors:
110 // Basic streaming for non-integer types:
111 // ----------------------------------------------------------------------
112 
113 template <class T>
114 inline void ELtsItem ( ELtsErrorLog & e, const T & t );
115 
116 // ----------------------------------------------------------------------
117 // Message Continuation:
118 // streaming for char []
119 // ----------------------------------------------------------------------
120 
121 inline void ELtsItem ( ELtsErrorLog & e, const char s[] );
122 
123 // ----------------------------------------------------------------------
124 // Message Continuation:
125 // special streaming for integer types
126 // ----------------------------------------------------------------------
127 
128 inline void ELtsItem ( ELtsErrorLog & e, int n );
129 inline void ELtsItem ( ELtsErrorLog & e, unsigned int n );
130 inline void ELtsItem ( ELtsErrorLog & e, long n );
131 inline void ELtsItem ( ELtsErrorLog & e, unsigned long n );
132 inline void ELtsItem ( ELtsErrorLog & e, short n );
133 inline void ELtsItem ( ELtsErrorLog & e, unsigned short n );
134 
135 } // end of namespace service
136 } // end of namespace edm
137 
138 #define ELTSERRORLOG_ICC
139 #include "FWCore/MessageService/interface/ELtsErrorLog.icc"
140 
141 #endif // ELTSERRORLOG_H
void ELtsItem(ELtsErrorLog &e, const T &t)
ELadministrator * a
Definition: ELtsErrorLog.h:98
void setDebugVerbosity(int debugVerbosity)
void setPackage(const ELstring &pkgName)
ELseverityLevel setDiscardThreshold(ELseverityLevel sev)
bool getELdestControl(const ELstring &name, ELdestControl &theDestControl) const
int setHexTrigger(int trigger)
bool pokeMsg(edm::ErrorObj &msg)
void setProcess(const ELstring &procName)
void setDebugMessages(ELseverityLevel sev, ELstring id)
void setSubroutine(const ELstring &subName)
void setModule(const ELstring &modName)
void dispatch(edm::ErrorObj &msg)
void initiateMsg(const ELseverityLevel &sev, const ELstring &id)
string s
Definition: asciidump.py:422
long double T
std::string ELstring
Definition: ELstring.h:26