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 
40  void swap( ELtsErrorLog& );
42 protected:
43  virtual ~ELtsErrorLog();
44 
45 // ----------------------------------------------------------------------
46 // Setup for preamble parts
47 // ----------------------------------------------------------------------
48 
49  void setSubroutine( const ELstring & subName );
50  void setModule( const ELstring & modName );
51  void setPackage( const ELstring & pkgName );
52  void setProcess( const ELstring & procName );
53 
54 // ----------------------------------------------------------------------
55 // Setup for advanced control
56 // ----------------------------------------------------------------------
57 
58  int setHexTrigger (int trigger);
62 
63 // ----------------------------------------------------------------------
64 // recovery of an ELdestControl handle
65 // ----------------------------------------------------------------------
66 
67  bool getELdestControl (const ELstring & name,
68  ELdestControl & theDestControl) const;
69 
70 // ----------------------------------------------------------------------
71 // Message Initiation
72 // ----------------------------------------------------------------------
73 
74 void initiateMsg (const ELseverityLevel& sev, const ELstring& id);
75 void initiateMsg (int debugLevel);
76 
77 // ----------------------------------------------------------------------
78 // Message Continuation:
79 // ----------------------------------------------------------------------
80 
81 public:
82  void item ( int n );
83  void item ( unsigned int n );
84  void item ( long n );
85  void item ( unsigned long n );
86  void item ( short n );
87  void item ( unsigned short n );
88  void item ( const ELstring & s );
89 
90 // ----------------------------------------------------------------------
91 // Message Completion:
92 // ----------------------------------------------------------------------
93 
94 protected:
95  bool pokeMsg ( edm::ErrorObj & msg );
96  void dispatch ( edm::ErrorObj & msg );
97 
98  // ----- member data:
99  //
100 protected:
106 
107 }; // ELtsErrorLog
108 
109 
110 // ----------------------------------------------------------------------
111 // Message Continuation:
112 // Global methods for physicists logging errors:
113 // Basic streaming for non-integer types:
114 // ----------------------------------------------------------------------
115 
116 template <class T>
117 inline void ELtsItem ( ELtsErrorLog & e, const T & t );
118 
119 // ----------------------------------------------------------------------
120 // Message Continuation:
121 // streaming for char []
122 // ----------------------------------------------------------------------
123 
124 inline void ELtsItem ( ELtsErrorLog & e, const char s[] );
125 
126 // ----------------------------------------------------------------------
127 // Message Continuation:
128 // special streaming for integer types
129 // ----------------------------------------------------------------------
130 
131 inline void ELtsItem ( ELtsErrorLog & e, int n );
132 inline void ELtsItem ( ELtsErrorLog & e, unsigned int n );
133 inline void ELtsItem ( ELtsErrorLog & e, long n );
134 inline void ELtsItem ( ELtsErrorLog & e, unsigned long n );
135 inline void ELtsItem ( ELtsErrorLog & e, short n );
136 inline void ELtsItem ( ELtsErrorLog & e, unsigned short n );
137 
138 inline
140  a.swap(b);
141 }
142 
143 } // end of namespace service
144 } // end of namespace edm
145 
146 #define ELTSERRORLOG_ICC
147 #include "FWCore/MessageService/interface/ELtsErrorLog.icc"
148 
149 #endif // ELTSERRORLOG_H
void ELtsItem(ELtsErrorLog &e, const T &t)
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)
double b
Definition: hdecay.h:120
double a
Definition: hdecay.h:121
void initiateMsg(const ELseverityLevel &sev, const ELstring &id)
long double T
void swap(ELtsErrorLog &a, ELtsErrorLog &b)
Definition: ELtsErrorLog.h:139
std::string ELstring
Definition: ELstring.h:26
ELtsErrorLog & operator=(const ELtsErrorLog &)
void swap(ELtsErrorLog &)