]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliRunTag.h
Execution time printout via AliInfo
[u/mrichter/AliRoot.git] / STEER / AliRunTag.h
1 #ifndef ALIRUNTAG_H
2 #define ALIRUNTAG_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6
7 /* $Id$ */
8
9 //-------------------------------------------------------------------------
10 //                          Class AliRunTag
11 //   This is the class to deal with the tags for the run level
12 //
13 //    Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch
14 //-------------------------------------------------------------------------
15
16 #include <TObject.h>
17 #include <TString.h>
18 #include <TClonesArray.h>
19 #include "AliLHCTag.h"
20
21 class AliEventTag;
22 class AliDetectorTag;
23
24
25 //___________________________________________________________________________
26 class AliRunTag : public TObject {
27  public:
28   AliRunTag();
29   virtual ~AliRunTag();
30   
31   //____________________________________________________//
32   void SetRunId(Int_t Pid) {fAliceRunId = Pid;}
33   void SetMagneticField(Float_t Pmag) {fAliceMagneticField = Pmag;}
34   void SetRunStartTime(Int_t Pt0) {fAliceRunStartTime = Pt0;}
35   void SetRunStopTime(Int_t Pt1) {fAliceRunStopTime = Pt1;}
36   void SetAlirootVersion(TString v) {fAlirootVersion = v;}
37   void SetRootVersion(TString v) {fRootVersion = v;}
38   void SetGeant3Version(TString v) {fGeant3Version = v;}
39   void SetRunQuality(Int_t Pn) {fAliceRunQuality = Pn;}
40   void SetBeamEnergy(Float_t PE) {fAliceBeamEnergy = PE;}
41   void SetBeamType(TString Ptype) {fAliceBeamType = Ptype;}
42   void SetCalibVersion(Int_t Pn) {fAliceCalibrationVersion = Pn;}
43   void SetDataType(Int_t i) {fAliceDataType = i;}
44   void SetNEvents(Int_t Pn) { fNumEvents = Pn; }
45   void SetLHCTag(Float_t Plumin, char *type);
46   void SetDetectorTag(const AliDetectorTag &t);
47   void AddEventTag(const AliEventTag &t);
48   void Clear(const char * opt = "");
49   
50   //____________________________________________________//
51   Int_t       GetRunId() const {return fAliceRunId;}
52   Float_t     GetMagneticField() const {return fAliceMagneticField;}
53   Int_t       GetRunStartTime() const {return fAliceRunStartTime;}
54   Int_t       GetRunStopTime() const {return fAliceRunStopTime;}
55   const char* GetAlirootVersion() const {return fAlirootVersion.Data();}
56   const char* GetRootVersion() const {return fRootVersion.Data();}
57   const char* GetGeant3Version() const {return fGeant3Version.Data();}
58   Int_t       GetRunQuality() const {return fAliceRunQuality;}
59   Float_t     GetBeamEnergy() const {return fAliceBeamEnergy;}
60   const char *GetBeamType() const {return fAliceBeamType.Data();}
61   Int_t       GetCalibVersion() const {return fAliceCalibrationVersion;}
62   Int_t       GetDataType() const {return fAliceDataType;}
63   Int_t       GetNEvents() const {return fNumEvents;}
64   AliLHCTag  *GetLHCTag() {return &fLHCTag; } 
65   const TClonesArray *GetEventTags() const {return &fEventTag;}
66   const TClonesArray *GetDetectorTags() const {return &fDetectorTag;}
67
68   //____________________________________________________//
69  private:
70   Int_t        fAliceRunId;              //the run id
71   Float_t      fAliceMagneticField;      //value of the magnetic field
72   Int_t        fAliceRunStartTime;       //run start date
73   Int_t        fAliceRunStopTime;        //run stop date
74   TString      fAlirootVersion;          //aliroot version
75   TString      fRootVersion;             //root version
76   TString      fGeant3Version;           //geant3 version
77   Bool_t       fAliceRunQuality;         //validation script
78   Float_t      fAliceBeamEnergy;         //beam energy cm
79   TString      fAliceBeamType;           //run type (pp, AA, pA)
80   Int_t        fAliceCalibrationVersion; //calibration version  
81   Int_t        fAliceDataType;           //0: simulation -- 1: data  
82   Int_t        fNumEvents;               //number of events per file
83   Int_t        fNumDetectors;            //number of detector configs per file
84   TClonesArray fEventTag;                //array with all event tags
85   TClonesArray fDetectorTag;             //array with all the detector tags
86   AliLHCTag    fLHCTag;                  //LHC tag object
87   
88   ClassDef(AliRunTag,3)  //(ClassName, ClassVersion)
89 };
90 //___________________________________________________________________________
91
92 #endif