New calibration classes (A.Colla)
[u/mrichter/AliRoot.git] / STEER / AliObjectMetaData.h
1 #ifndef ALIOBJECTMETADATA_H
2 #define ALIOBJECTMETADATA_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 ///  Object meta data: it fully describes a run dependent database object. 
10 ///  It is attached to the object to build an AliRunData object
11 /// 
12 ///
13
14 #include <TObject.h>
15 #include <TString.h>
16
17 #include "AliMetaData.h"
18
19
20 class AliObjectMetaData: public AliMetaData {
21 public:
22   AliObjectMetaData();  // default constructor
23   AliObjectMetaData
24          (const char* name, Int_t firstRun = -1, Int_t lastRun = -1, Int_t period=-1, 
25           const char* objFormat="", const char* responsible="Duck, Donald", 
26           const char* extraInfo="");    // constructor
27   virtual ~AliObjectMetaData() {};      // destructor
28
29   AliObjectMetaData(const AliObjectMetaData& entry);    // copy contructor      
30   AliObjectMetaData& operator = (const AliObjectMetaData& entry);       // assignment  operator
31
32   void         SetFormat(const char* objFormat) {fFormat = objFormat;} // infos about object's format (array o floats, histos...)
33   void         SetResponsible(const char* responsible) {fResponsible = responsible;}    // who made the object?
34   void         SetExtraInfo(const char* extraInfo) {fExtraInfo = extraInfo;}    // something else you would like to know
35   void         SetPeriod(Int_t period) {fPeriod = period;}      // number of beam period
36
37   const char*  GetFormat() const;
38   const char*  GetResponsible() const;
39   const char*  GetExtraInfo() const;
40   const Int_t  GetPeriod() const;
41   
42 private:
43   Int_t        fPeriod;          // beam period 
44   TString      fFormat;         // object's format
45   TString      fResponsible;    // name of the person responsible for the object
46   TString      fExtraInfo;      // extra info about the object
47   
48
49 ClassDef(AliObjectMetaData, 1)   // Object meta data: full description of a run dependent database object
50 };
51
52 #endif