]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - HLT/TPCLib/AliHLTTPCLog.h
- removed obsolete argument -timebin
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCLog.h
index 3ae208e2c4cf92d5cb5ce2e8545b806edbf29e2a..776f976b8a0f0b366f17eaf4a2d75461970b5428 100644 (file)
@@ -1,6 +1,10 @@
 // @(#) $Id$
 // Original: AliHLTLog.h,v 1.2 2004/06/11 16:06:33 loizides Exp $
 
+//* This file is property of and copyright by the ALICE HLT Project        * 
+//* ALICE Experiment at CERN, All rights reserved.                         *
+//* See cxx source for full Copyright notice                               *
+
 #ifndef ALIHLTTPCLOG_H
 #define ALIHLTTPCLOG_H
 
 
 using namespace std;
 
+/** key to indicate the origin part */
+#define AliHLTTPCLogKeyOrigin  "__origin"
+/** key to indicate the keyword part */
+#define AliHLTTPCLogKeyKeyword "__key" 
+/** key to indicate the message part */
+#define AliHLTTPCLogKeyMessage "__message"
+
 /**
  * @class AliHLTTPCLog
  * This class implements the old HLT TPC logging mechanism.
@@ -17,35 +28,24 @@ using namespace std;
  * \em Note: the old LOG and ENDLOG macros should be used any longer,
  * use the HLT logging macros or AliRoot logging macros instead. 
  * @see AliHLTLogging
+ *
+ * @ingroup alihlt_tpc
  */
 class AliHLTTPCLog  {
   public:
-  enum TLogLevel { kNone = 0, kDebug= 0x01, kInformational = 0x02, kWarning = 0x04, kError = 0x08 , kFatal = 0x10, kPrimary = 0x80, kAll = 0x9F };
+  enum TLogLevel { kNone = 0, kBenchmark=0x01,kDebug= 0x02, kInformational = 0x04, kWarning = 0x08, kError = 0x10 , kFatal = 0x20, kPrimary = 0x80, kAll = 0xBF };
 
+ private:
   /** not used */
   static const char* kEnd;                                         //! transient
   /** not used */
   static const char* kPrec;                                        //! transient
+ public:
   /** stream manipulator for hex output, but empty in the implementation */
   static const char* kHex;                                         //! transient
   /** stream manipulator for decimal output, but empty in the implementation */
   static const char* kDec;                                         //! transient
 
-  /** the logging filter */
-  static TLogLevel fgLevel;                                        // see above
-
-  /** key to indicate the origin part */
-  static const char* fgKeyOrigin;                                  //! transient
-  /** key to indicate the keyword part */
-  static const char* fgKeyKeyword;                                 //! transient
-  /** key to indicate the message part */
-  static const char* fgKeyMessage;                                 //! transient
-
-  /** a stringstream to receive the output */
-  static stringstream fgStream;                                    // see above
-  /** HLT logging instance */
-  static AliHLTLogging fgHLTLogging;                               // see above
-
   /**
    * Flush the stringstream and print output to the HLT logging system.
    * The attributes are set before the message is streamed into the
@@ -56,16 +56,42 @@ class AliHLTTPCLog  {
    * into the stringstream.
    */
   static const char* Flush();
+
+  /**
+   * Get the stream.
+   */
+  static stringstream& GetStream() {return fgStream;}
+
+  /**
+   * Get the logging level.
+   */
+  static TLogLevel GetLevel() {return fgLevel;}
+
+ private:
+  /** a stringstream to receive the output */
+  static stringstream fgStream;                                    // see above
+
+  /** the logging filter */
+  static TLogLevel fgLevel;                                        // see above
+
+  /** HLT logging instance */
+  static AliHLTLogging fgHLTLogging;                               // see above
+
+  /** copy constructor prohibited */
+  AliHLTTPCLog(const AliHLTTPCLog&);
+  /** assignment operator prohibited */
+  AliHLTTPCLog& operator=(const AliHLTTPCLog&);
+
 };
 
 /** LOG macro to be used by the TPC code 
  * \em Note: this macro should be used any longer 
  */
 #define LOG( lvl, origin, keyword ) \
if (lvl>=AliHLTTPCLog::fgLevel) AliHLTTPCLog::fgStream << lvl \
-                           << " " << AliHLTTPCLog::fgKeyOrigin  << " " << origin \
-                           << " " << AliHLTTPCLog::fgKeyKeyword << " " << keyword \
-                          << " " << AliHLTTPCLog::fgKeyMessage << " "
 if (lvl>=AliHLTTPCLog::GetLevel()) AliHLTTPCLog::GetStream() << lvl  \
+                           << " " << AliHLTTPCLogKeyOrigin  << " " << origin \
+                           << " " << AliHLTTPCLogKeyKeyword << " " << keyword \
+                          << " " << AliHLTTPCLogKeyMessage << " "
 
 /** ENDLOG macro calls the Flush method 
  * \em Note: this macro should be used any longer