1 #ifndef ALIRAWDATAERRORLOG_H
2 #define ALIRAWDATAERRORLOG_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 /////////////////////////////////////////////////////////////////////
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 //
14 // Further description of the methods and functionality are given //
17 // cvetan.cheshkov@cern.ch //
19 /////////////////////////////////////////////////////////////////////
23 class AliRawDataErrorLog: public TNamed {
27 enum ERawDataErrorLevel {
34 AliRawDataErrorLog(Int_t eventNumber, Int_t ddlId,
35 ERawDataErrorLevel errorLevel,
37 const char *message = NULL);
38 AliRawDataErrorLog(const AliRawDataErrorLog & source);
39 AliRawDataErrorLog & operator=(const AliRawDataErrorLog & source);
40 virtual ~AliRawDataErrorLog() {};
41 virtual void Copy(TObject &obj) const;
43 Int_t GetEventNumber() const { return fEventNumber; }
44 Int_t GetDdlID() const { return fDdlID; }
45 ERawDataErrorLevel GetErrorLevel() const { return fErrorLevel; }
46 const char* GetErrorLevelAsString() const;
47 Int_t GetErrorCode() const { return fErrorCode; }
48 const char * GetMessage() const { return fName.Data(); }
49 Int_t GetCount() const { return fCount; }
51 Bool_t IsSortable() const {return kTRUE;}
52 Int_t Compare(const TObject* obj) const;
54 void AddCount() { fCount++; }
56 void Print(Option_t* opt="") const;
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)
66 ClassDef(AliRawDataErrorLog, 3)