New calibration classes (A.Colla)
[u/mrichter/AliRoot.git] / STEER / AliRunData.h
1 #ifndef ALIRUNDATA_H
2 #define ALIRUNDATA_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 ///
9 /// class that contains an object from the data base and knows about its
10 /// validity range (meta data)
11 ///
12
13 #include <TObject.h>
14 #include "AliObjectMetaData.h"
15
16
17 class AliRunData: public TObject {
18 public:
19   AliRunData();
20   AliRunData(TObject* object, const AliObjectMetaData& objMetaData);
21   virtual ~AliRunData();
22
23   AliRunData(const AliRunData& entry);
24   AliRunData& operator = (const AliRunData& entry);
25
26   void                 SetVersion(Int_t version = -1)
27     {fObjMetaData.SetVersion(version);}
28
29   void                 SetRunRange(Int_t firstRun = -1, Int_t lastRun=-1)
30     {fObjMetaData.SetRunRange(firstRun, lastRun);}
31
32   virtual const char*  GetName() const;
33   const TObject*       GetObject() const {return fObject;}
34   const AliObjectMetaData&   GetObjectMetaData() const {return fObjMetaData;}
35
36   virtual Int_t        Compare(const TObject* object) const;
37
38 private:
39   TObject*             fObject;         // pointer to the data base entry obj.
40   AliObjectMetaData    fObjMetaData;    // object's meta data
41
42   ClassDef(AliRunData, 2)   // container for a data base entry object
43 };
44
45 #endif