3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
9 /// base class of the meta data of run dependent objects
10 /// Derived classes: AliObjectMetaData, AliSelectionMetaData
17 class AliMetaData: public TObject {
20 AliMetaData(const char* name,
21 Int_t firstRun = -1, Int_t lastRun = -1, Int_t version = -1);
22 virtual ~AliMetaData() {};
24 AliMetaData(const AliMetaData& entry);
25 AliMetaData& operator = (const AliMetaData& entry);
27 virtual void SetName(const char* name) {fName = name; DecodeName();}
28 /*virtual*/ void SetRunRange(Int_t firstRun = -1, Int_t lastRun = 1)
29 {fFirstRun = firstRun; fLastRun = lastRun;}
30 /*virtual*/ void SetVersion(Int_t version = -1) {fVersion = version;}
32 void SetDetector(const char* Detector) {fDetector = Detector; EncodeName();}
33 void SetDBType(const char* DBType) {fDBType = DBType; EncodeName();}
34 void SetDetSpecType(const char* DetSpecType) {fDetSpecType = DetSpecType; EncodeName();}
36 const char* GetDetector() const;
37 const char* GetDBType() const;
38 const char* GetDetSpecType() const;
41 /*virtual*/ const char* GetName() const;
42 /*virtual*/ Int_t GetFirstRun() const {return fFirstRun;}
43 /*virtual*/ Int_t GetLastRun() const {return fLastRun;}
44 /*virtual*/ Int_t GetVersion() const {return fVersion;}
46 /*virtual*/ Bool_t IsValid(Int_t runNumber,
47 AliMetaData* metaData = NULL) const;
48 /*virtual*/ Bool_t IsStrictlyValid(Int_t runNumber,
49 AliMetaData* metaData = NULL) const;
50 /*virtual*/ Int_t Compare(const TObject* object) const;
51 /*virtual*/ Bool_t Matches(const char* name, Int_t runNumber) const;
54 TString fName; // name of the entry
55 TString fDetector; // name of the detector (ZDC, TPC, etc...)
56 TString fDBType; // name of the database type (Calib, Align)
57 TString fDetSpecType; // name of the detector's specific data type (pedestals, gain coeffs...)
58 Int_t fFirstRun; // index of first valid run
59 Int_t fLastRun; // index of last valid run
60 Int_t fVersion; // version of the entry
66 ClassDef(AliMetaData, 2) // base class of the meta data of run dependent objects
69 extern Bool_t operator == (const AliMetaData& entry1,
70 const AliMetaData& entry2);