]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliDCSGenDB.h
New class AliTriggerUtils to solve the cirular dependency between libESD and libSTEER...
[u/mrichter/AliRoot.git] / STEER / AliDCSGenDB.h
1
2 /////////////////////////////////////////////////////////////////
3 // Class to generate temperature sensor data base entries.
4 //
5 // Existing data base structure read at start of processsing.
6 // 20/12-2006 HH.
7 // Modification log:
8 /////////////////////////////////////////////////////////////////
9
10 #ifndef AliDCSGenDB_h
11 #define AliDCSGenDB_h
12
13 #include <TROOT.h>
14 #include <TProfile.h>
15 #include <TProfile2D.h>
16 #include <TH1F.h>
17 #include <TFile.h>
18 #include <TObjArray.h>
19
20 #include "AliCDBMetaData.h"
21 #include "AliCDBManager.h"
22 #include "AliCDBId.h"
23 #include "AliCDBStorage.h"
24 #include "AliDCSSensorArray.h"
25 #include "AliLog.h"
26 #include "TSystem.h"
27
28 class AliDCSGenDB : public TObject {
29
30 public:
31
32 // Constructors
33
34   AliDCSGenDB();
35   AliDCSGenDB(const char* defaultStorage, const char* specificStorage);
36   ~AliDCSGenDB();
37
38 // Functionality
39
40   void            MakeCalib(const char *file, const char *fMap,
41                             const TTimeStamp& startTime,
42                             const TTimeStamp& endTime,
43                             Int_t firstRun, Int_t lastRun, const char *calibDir);
44   void            MakeConfig(const char *file, Int_t firstRun, Int_t lastRun, 
45                              const char *confDir);
46   AliCDBMetaData* CreateMetaObject(const char *objectClassName);
47   void            StoreObject(const char* cdbPath, TObject* object, AliCDBMetaData* metaData);
48   void            Init(Int_t run, const char *configDir, 
49                        const char *specificDir, 
50                        const char *sensorClass="AliDCSSensorArray");
51   static TClonesArray *  ReadList(const char* fname, const char *title="dcsConf");
52   static TTree        *  ReadListTree(const char* fname, const char *title="dcsConf");
53
54 // Getters/Setters
55
56   void            SetFirstRun(Int_t frun){fFirstRun=frun;}
57   void            SetLastRun(Int_t lrun) {fLastRun=lrun;}
58   TMap*           SetGraphFile(const char* fname);
59   void            SetConfTree(TTree *tree) {fConfTree=tree;}
60   TTree*          GetConfTree() const {return fConfTree;}
61   const TString&  GetSpecificStorage() const { return fSpecificStorage;}
62   void            SetSpecificStorage (const TString& specificStorage) { fSpecificStorage=specificStorage; }
63   const TString&  GetDefaultStorage() const { return fDefaultStorage;}
64   void            SetDefaultStorage (const TString& defaultStorage) { fDefaultStorage=defaultStorage; }
65   const AliDCSSensorArray* GetSensorArray() const {return fSensor;}
66   void            SetSensorArray(AliDCSSensorArray *arr) { fSensor=arr; }
67
68
69 protected:
70   AliDCSGenDB(const AliDCSGenDB& org);
71   AliDCSGenDB& operator= (const AliDCSGenDB& org);
72
73    Int_t          fFirstRun;        // first run in validity period
74    Int_t          fLastRun;         // last run in validity period
75    TString        fSpecificStorage; // specific storage for data base
76    TString        fDefaultStorage;  // default storage for data base
77    AliDCSSensorArray  *fSensor;     // array of DCS sensors
78    AliCDBStorage  *fStorLoc;        // pointer to CDB storage
79    AliCDBMetaData *fMetaData;       // data base metadata
80    TTree          *fConfTree;       // configuration tree
81
82    ClassDef(AliDCSGenDB,1)
83  };
84 #endif
85