]>
Commit | Line | Data |
---|---|---|
d5ebf00e | 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> | |
f009b5c1 | 15 | #include <TObjArray.h> |
16 | #include <TString.h> | |
d5ebf00e | 17 | |
8d218603 | 18 | class TGeoHMatrix; |
d5ebf00e | 19 | class AliESDVertex; |
20 | ||
21 | class AliESDRun: public TObject { | |
22 | public: | |
23 | ||
24 | AliESDRun(); | |
25 | AliESDRun(const AliESDRun& esd); | |
26 | AliESDRun& operator=(const AliESDRun& esd); | |
732a24fe | 27 | virtual void Copy(TObject &obj) const; // Interface for using TOBject::Copy() |
8d218603 | 28 | virtual ~AliESDRun(); |
d5ebf00e | 29 | |
30 | Int_t GetRunNumber() const {return fRunNumber;} | |
31 | void SetRunNumber(Int_t n) {fRunNumber=n;} | |
32 | void SetMagneticField(Float_t mf){fMagneticField = mf;} | |
694aad0c | 33 | Double_t GetMagneticField() const {return fMagneticField;} |
34 | UInt_t GetPeriodNumber() const {return fPeriodNumber;} | |
d5ebf00e | 35 | void SetPeriodNumber(Int_t n) {fPeriodNumber=n;} |
36 | void Reset(); | |
37 | void Print(const Option_t *opt=0) const; | |
38 | void SetDiamond(const AliESDVertex *vertex); | |
f009b5c1 | 39 | void SetTriggerClass(const char*name, Int_t index); |
d5ebf00e | 40 | |
694aad0c | 41 | Double_t GetDiamondX() const {return fDiamondXY[0];} |
42 | Double_t GetDiamondY() const {return fDiamondXY[1];} | |
43 | Double_t GetSigma2DiamondX() const {return fDiamondCovXY[0];} | |
44 | Double_t GetSigma2DiamondY() const {return fDiamondCovXY[2];} | |
d5ebf00e | 45 | void GetDiamondCovXY(Float_t cov[3]) const { |
46 | for(Int_t i=0;i<3;i++) cov[i]=fDiamondCovXY[i]; return; | |
47 | } | |
f009b5c1 | 48 | const char* GetTriggerClass(Int_t index) const; |
49 | TString GetActiveTriggerClasses() const; | |
50 | TString GetFiredTriggerClasses(ULong64_t mask) const; | |
51 | Bool_t IsTriggerClassFired(ULong64_t mask, const char *name) const; | |
52 | ||
8d218603 | 53 | void SetPHOSMatrix(TGeoHMatrix*matrix, Int_t i) { |
54 | if ((i >= 0) && (i < kNPHOSMatrix)) fPHOSMatrix[i] = matrix; | |
55 | } | |
56 | const TGeoHMatrix* GetPHOSMatrix(Int_t i) const { | |
57 | return ((i >= 0) && (i < kNPHOSMatrix)) ? fPHOSMatrix[i] : NULL; | |
58 | } | |
59 | ||
f009b5c1 | 60 | enum {kNTriggerClasses = 50}; |
8d218603 | 61 | enum {kNPHOSMatrix = 5}; |
f009b5c1 | 62 | |
d5ebf00e | 63 | private: |
694aad0c | 64 | Double32_t fMagneticField; // Solenoid Magnetic Field in kG : for compatibility with AliMagF |
65 | Double32_t fDiamondXY[2]; // Interaction diamond (x,y) in RUN | |
66 | Double32_t fDiamondCovXY[3]; // Interaction diamond covariance (x,y) in RUN | |
67 | UInt_t fPeriodNumber; // PeriodNumber | |
68 | Int_t fRunNumber; // Run Number | |
69 | Int_t fRecoVersion; // Version of reconstruction | |
f009b5c1 | 70 | TObjArray fTriggerClasses; // array of TNamed containing the names of the active trigger classes |
8d218603 | 71 | TGeoHMatrix* fPHOSMatrix[kNPHOSMatrix]; //PHOS module position and orientation matrices |
694aad0c | 72 | |
8d218603 | 73 | ClassDef(AliESDRun,4) |
d5ebf00e | 74 | }; |
75 | ||
76 | #endif |