]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliESDRun.h
Enlarged range for the PHOS energy
[u/mrichter/AliRoot.git] / STEER / AliESDRun.h
1 // -*- mode: C++ -*- 
2 #ifndef ALIESDRUN_H
3 #define ALIESDRUN_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 //-------------------------------------------------------------------------
8 //                     Implementation Class AliESDRun
9 //   Run by run data
10 //   for the ESD   
11 //   Origin: Christian Klein-Boesing, CERN, Christian.Klein-Boesing@cern.ch 
12 //-------------------------------------------------------------------------
13
14 #include <TObject.h>
15 #include <TObjArray.h>
16 #include <TString.h>
17
18 class AliESDVertex;
19
20 class AliESDRun: public TObject {
21 public:
22
23   AliESDRun();
24   AliESDRun(const AliESDRun& esd);
25   AliESDRun& operator=(const AliESDRun& esd);
26   virtual void Copy(TObject &obj) const; // Interface for using TOBject::Copy()
27
28   Int_t   GetRunNumber() const {return fRunNumber;}
29   void    SetRunNumber(Int_t n) {fRunNumber=n;}
30   void    SetMagneticField(Float_t mf){fMagneticField = mf;}
31   Double_t GetMagneticField() const {return fMagneticField;}
32   UInt_t   GetPeriodNumber() const {return fPeriodNumber;}
33   void    SetPeriodNumber(Int_t n) {fPeriodNumber=n;}
34   void    Reset();
35   void    Print(const Option_t *opt=0) const;
36   void SetDiamond(const AliESDVertex *vertex);
37   void    SetTriggerClass(const char*name, Int_t index);
38
39   Double_t GetDiamondX() const {return fDiamondXY[0];}
40   Double_t GetDiamondY() const {return fDiamondXY[1];}
41   Double_t GetSigma2DiamondX() const {return fDiamondCovXY[0];}
42   Double_t GetSigma2DiamondY() const {return fDiamondCovXY[2];}
43   void GetDiamondCovXY(Float_t cov[3]) const {
44     for(Int_t i=0;i<3;i++) cov[i]=fDiamondCovXY[i]; return;
45   }
46   const char* GetTriggerClass(Int_t index) const;
47   TString     GetActiveTriggerClasses() const;
48   TString     GetFiredTriggerClasses(ULong64_t mask) const;
49   Bool_t      IsTriggerClassFired(ULong64_t mask, const char *name) const;
50
51   enum {kNTriggerClasses = 50};
52
53 private:
54   Double32_t      fMagneticField;   // Solenoid Magnetic Field in kG : for compatibility with AliMagF
55   Double32_t      fDiamondXY[2];    // Interaction diamond (x,y) in RUN
56   Double32_t      fDiamondCovXY[3]; // Interaction diamond covariance (x,y) in RUN
57   UInt_t          fPeriodNumber;    // PeriodNumber
58   Int_t           fRunNumber;       // Run Number
59   Int_t           fRecoVersion;     // Version of reconstruction 
60   TObjArray       fTriggerClasses;  // array of TNamed containing the names of the active trigger classes
61
62
63   ClassDef(AliESDRun,3)
64 };
65
66 #endif