Line data Source code
1 : #ifndef ALIRAWDATAERRORLOG_H
2 : #define ALIRAWDATAERRORLOG_H
3 :
4 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 : * See cxx source for full Copyright notice */
6 :
7 : /////////////////////////////////////////////////////////////////////
8 : // //
9 : // class AliRawDataErrorLog //
10 : // This is a class for logging raw-data related errors. //
11 : // It is used to record and retrieve of the errors //
12 : // during the reading and reconstruction of raw-data and ESD //
13 : // analysis. //
14 : // Further description of the methods and functionality are given //
15 : // inline. //
16 : // //
17 : // cvetan.cheshkov@cern.ch //
18 : // //
19 : /////////////////////////////////////////////////////////////////////
20 :
21 : #include <TNamed.h>
22 :
23 : class AliRawDataErrorLog: public TNamed {
24 :
25 : public:
26 :
27 : enum ERawDataErrorLevel {
28 : kMinor = 1,
29 : kMajor = 2,
30 : kFatal = 3
31 : };
32 :
33 : AliRawDataErrorLog();
34 : AliRawDataErrorLog(Int_t eventNumber, Int_t ddlId,
35 : ERawDataErrorLevel errorLevel,
36 : Int_t errorCode,
37 : const char *message = NULL);
38 : AliRawDataErrorLog(const AliRawDataErrorLog & source);
39 : AliRawDataErrorLog & operator=(const AliRawDataErrorLog & source);
40 564 : virtual ~AliRawDataErrorLog() {};
41 : virtual void Copy(TObject &obj) const;
42 :
43 442 : Int_t GetEventNumber() const { return fEventNumber; }
44 310 : Int_t GetDdlID() const { return fDdlID; }
45 0 : ERawDataErrorLevel GetErrorLevel() const { return fErrorLevel; }
46 : const char* GetErrorLevelAsString() const;
47 310 : Int_t GetErrorCode() const { return fErrorCode; }
48 0 : const char * GetMessage() const { return fName.Data(); }
49 0 : Int_t GetCount() const { return fCount; }
50 :
51 0 : Bool_t IsSortable() const {return kTRUE;}
52 : Int_t Compare(const TObject* obj) const;
53 :
54 258 : void AddCount() { fCount++; }
55 :
56 : void Print(Option_t* opt="") const;
57 :
58 : private:
59 :
60 : Int_t fEventNumber; // Event number as it appears in the input raw-data file
61 : Int_t fDdlID; // ID of the DLL in which the error occured
62 : ERawDataErrorLevel fErrorLevel; // Level of the raw data error
63 : Int_t fErrorCode; // Code of the raw data error (detector-specific)
64 : Int_t fCount; // Counter of identical errors (occurances)
65 :
66 180 : ClassDef(AliRawDataErrorLog, 3)
67 : };
68 :
69 : #endif
|