]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliRawDataErrorLog.h
New class for storing and retrieving of the raw-data decoding errors
[u/mrichter/AliRoot.git] / STEER / AliRawDataErrorLog.h
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 ERawDataErrorType {
28     kNone = 0, 
29     kMinor = 1, 
30     kMajor = 2, 
31     kFatal = 3, 
32   };
33
34   AliRawDataErrorLog();
35   AliRawDataErrorLog(Int_t eventNumber, Int_t ddlId,
36                      ERawDataErrorType errorType,
37                      const char *message = NULL);
38   AliRawDataErrorLog(const AliRawDataErrorLog & source);
39   AliRawDataErrorLog & operator=(const AliRawDataErrorLog & source);
40   virtual ~AliRawDataErrorLog() {};
41
42   Int_t             GetEventNumber() const { return fEventNumber; }
43   Int_t             GetDdlID()       const { return fDdlID; }
44   ERawDataErrorType GetErrorType()   const { return fErrorType; }
45   const char *      GetMessage()     const { return fName.Data(); }
46
47   Bool_t            IsSortable() const {return kTRUE;}
48   Int_t             Compare(const TObject* obj) const;
49
50  private:
51
52   Int_t             fEventNumber; // Event number as it appears in the input raw-data file
53   Int_t             fDdlID;       // ID of the DLL in which the error occured
54   ERawDataErrorType fErrorType;   // Type of the raw data error
55
56   ClassDef(AliRawDataErrorLog, 1)
57 };
58
59 #endif