1 #ifndef ALIMUONLOGGER_H
2 #define ALIMUONLOGGER_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
10 /// \class AliMUONLogger
11 /// \brief A logger that keeps track of the number of times a message appeared
13 // Author Laurent Aphecetche
15 #include <Riostream.h>
25 class AliMUONStringIntMap;
27 class AliMUONLogger : public TObject
30 AliMUONLogger(Int_t maxNumberOfEntries=-1);
31 virtual ~AliMUONLogger();
33 Int_t Log(const char* message);
35 void Print(Option_t* opt="") const;
37 void Print(TString& key, ofstream& out) const;
39 void Clear(Option_t* /*option*/ ="");
41 Bool_t Next(TString& msg, Int_t& occurance);
45 Int_t NumberOfEntries() const;
49 AliMUONLogger(const AliMUONLogger& rhs); // not implemented
51 AliMUONLogger& operator=(const AliMUONLogger& rhs); // not implemented
55 Int_t fMaxNumberOfEntries; //!< after this number, print and reset
56 AliMUONStringIntMap* fLog; //!< map from message to number of times the message was issued
58 ClassDef(AliMUONLogger,1) // A logger that keeps track of the number of times a message appeared