]>
Commit | Line | Data |
---|---|---|
1450a7cd | 1 | #ifndef ALIZDCRECO_H |
2 | #define ALIZDCRECO_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | //////////////////////////////////////////////// | |
7 | // Classe for ZDC RecPoints // | |
8 | //////////////////////////////////////////////// | |
9 | ||
10 | #include "TObject.h" | |
11 | ||
12 | class AliZDCReco : public TObject { | |
13 | ||
14 | public: | |
cc2abffd | 15 | AliZDCReco(); |
c35ed519 | 16 | AliZDCReco(Float_t* ezn1, Float_t* ezp1, Float_t* ezn2, Float_t* ezp2, |
17 | Float_t* ezn1tow, Float_t* ezp1tow, Float_t* ezn2tow, Float_t* ezp2tow, | |
18 | Float_t* ezem1, Float_t* ezem2, Float_t* ref1, Float_t* ref2, | |
646f1679 | 19 | // |
73bc3a3f | 20 | Int_t detspnSideA, Int_t detsppSideA, |
21 | Int_t detspnSideC, Int_t detsppSideC, | |
22 | Int_t trsp, Int_t trspSideA, Int_t trspSideC, | |
23 | Int_t npart, Int_t npartSideA, Int_t npartSideC, | |
1e319f71 | 24 | Float_t b, Float_t bSideA, Float_t bSideC, |
077d2505 | 25 | UInt_t recoFlag, Bool_t energyFlag, Bool_t scalerOn, |
26 | UInt_t* scaler, Int_t tdcData[32][4]); | |
646f1679 | 27 | |
cc2abffd | 28 | AliZDCReco(const AliZDCReco &oldreco); |
be004c43 | 29 | AliZDCReco& operator= (const AliZDCReco &reco); |
1450a7cd | 30 | virtual ~AliZDCReco() {} |
31 | ||
32 | // Getters | |
c35ed519 | 33 | virtual Float_t GetZN1HREnergy() const {return fZN1Energy[0];} |
34 | virtual Float_t GetZP1HREnergy() const {return fZP1Energy[0];} | |
35 | virtual Float_t GetZN2HREnergy() const {return fZN2Energy[0];} | |
36 | virtual Float_t GetZP2HREnergy() const {return fZP2Energy[0];} | |
646f1679 | 37 | // |
c35ed519 | 38 | virtual Float_t GetZN1LREnergy() const {return fZN1Energy[1];} |
39 | virtual Float_t GetZP1LREnergy() const {return fZP1Energy[1];} | |
40 | virtual Float_t GetZN2LREnergy() const {return fZN2Energy[1];} | |
41 | virtual Float_t GetZP2LREnergy() const {return fZP2Energy[1];} | |
646f1679 | 42 | // |
c35ed519 | 43 | virtual Float_t GetZN1HREnTow(Int_t tow) const {return fZN1EnTow[tow];} |
44 | virtual Float_t GetZP1HREnTow(Int_t tow) const {return fZP1EnTow[tow];} | |
45 | virtual Float_t GetZN2HREnTow(Int_t tow) const {return fZN2EnTow[tow];} | |
46 | virtual Float_t GetZP2HREnTow(Int_t tow) const {return fZP2EnTow[tow];} | |
84d6255e | 47 | // |
c35ed519 | 48 | virtual Float_t GetZN1LREnTow(Int_t tow) const {return fZN1EnTow[tow+5];} |
49 | virtual Float_t GetZP1LREnTow(Int_t tow) const {return fZP1EnTow[tow+5];} | |
50 | virtual Float_t GetZN2LREnTow(Int_t tow) const {return fZN2EnTow[tow+5];} | |
51 | virtual Float_t GetZP2LREnTow(Int_t tow) const {return fZP2EnTow[tow+5];} | |
52 | // | |
53 | virtual Float_t GetZEM1HRsignal() const {return fZEM1signal[0];} | |
54 | virtual Float_t GetZEM1LRsignal() const {return fZEM1signal[1];} | |
55 | virtual Float_t GetZEM2HRsignal() const {return fZEM2signal[0];} | |
56 | virtual Float_t GetZEM2LRsignal() const {return fZEM2signal[1];} | |
57 | // | |
58 | virtual Float_t GetPMRef1HRsignal() const {return fZEM1signal[0];} | |
59 | virtual Float_t GetPMRef1LRsignal() const {return fZEM1signal[1];} | |
60 | virtual Float_t GetPMRef2HRsignal() const {return fZEM2signal[0];} | |
61 | virtual Float_t GetPMRef2LRsignal() const {return fZEM2signal[1];} | |
646f1679 | 62 | // |
73bc3a3f | 63 | virtual Int_t GetNDetSpecNSideA() const {return fNDetSpecNSideA;} |
64 | virtual Int_t GetNDetSpecPSideA() const {return fNDetSpecPSideA;} | |
65 | virtual Int_t GetNDetSpecNSideC() const {return fNDetSpecNSideC;} | |
66 | virtual Int_t GetNDetSpecPSideC() const {return fNDetSpecPSideC;} | |
67 | virtual Int_t GetNTrueSpectators() const {return fNTrueSpectators;} | |
68 | virtual Int_t GetNTrueSpecSideA() const {return fNTrueSpecSideA;} | |
69 | virtual Int_t GetNTrueSpecSideC() const {return fNTrueSpecSideC;} | |
70 | virtual Int_t GetNParticipants() const {return fNParticipants;} | |
71 | virtual Int_t GetNPartSideA() const {return fNPartSideA;} | |
72 | virtual Int_t GetNPartSideC() const {return fNPartSideC;} | |
73 | virtual Float_t GetImpParameter() const {return fImpParameter;} | |
74 | virtual Float_t GetImpParSideA() const {return fImpParSideA;} | |
75 | virtual Float_t GetImpParSideC() const {return fImpParSideC;} | |
1e319f71 | 76 | // |
77 | virtual UInt_t GetRecoFlag() const {return fRecoFlag;} | |
78 | virtual UInt_t GetZDCPattern() const {return (fRecoFlag & 0x0000003f);} | |
79 | virtual UInt_t GetChOnFlag() const {return (fRecoFlag & 0x00000100);} | |
80 | virtual UInt_t GetChOvflwFlag() const {return (fRecoFlag & 0x00000200);} | |
81 | virtual UInt_t GetChUndflwFlag() const {return (fRecoFlag & 0x00000400);} | |
81f09162 | 82 | // |
077d2505 | 83 | virtual Bool_t GetEnergyFlag() const {return fEnergyFlag;} |
81f09162 | 84 | virtual Bool_t IsScalerOn() const {return fIsScalerOn;} |
85 | virtual UInt_t GetZDCScaler(Int_t k) const {return fZDCScaler[k];} | |
82dffa48 | 86 | // |
f53e5ecb | 87 | virtual Int_t GetZDCTDCData(Int_t j, Int_t k) const {return fZDCTDCData[j][k];} |
1450a7cd | 88 | |
93f80a6f | 89 | // Print method |
90 | virtual void Print(Option_t *) const; | |
91 | ||
92 | private: | |
1450a7cd | 93 | // Data members |
4e1fc320 | 94 | Float_t fZN1Energy[2]; // Energy detected in ZN1 (sum of 5 tower signals) |
95 | Float_t fZP1Energy[2]; // Energy detected in ZP1 (sum of 5 tower signals) | |
96 | Float_t fZN2Energy[2]; // Energy detected in ZN2 (sum of 5 tower signals) | |
97 | Float_t fZP2Energy[2]; // Energy detected in ZP2 (sum of 5 tower signals) | |
646f1679 | 98 | // |
c35ed519 | 99 | Float_t fZN1EnTow[10]; // Energy in ZN1 towers |
100 | Float_t fZP1EnTow[10]; // Energy in ZP1 towers | |
101 | Float_t fZN2EnTow[10]; // Energy in ZN2 towers | |
102 | Float_t fZP2EnTow[10]; // Energy in ZP2 towers | |
646f1679 | 103 | // |
c35ed519 | 104 | Float_t fZEM1signal[2];// Signal in EM1 ZDC |
105 | Float_t fZEM2signal[2];// Signal in EM2 ZDC | |
84d6255e | 106 | // |
c35ed519 | 107 | Float_t fPMRef1[2]; // Reference PM side C |
108 | Float_t fPMRef2[2]; // Reference PM side A | |
646f1679 | 109 | // |
73bc3a3f | 110 | Int_t fNDetSpecNSideA; // Number of spectator neutrons detected |
111 | Int_t fNDetSpecPSideA; // Number of spectator protons detected | |
112 | Int_t fNDetSpecNSideC; // Number of spectator neutrons detected | |
113 | Int_t fNDetSpecPSideC; // Number of spectator protons detected | |
114 | Int_t fNTrueSpectators;// Estimate of the total number of spectators | |
115 | Int_t fNTrueSpecSideA; // Estimate of the number of spectators side A | |
116 | Int_t fNTrueSpecSideC; // Estimate of the number of spectators side C | |
117 | Int_t fNParticipants; // Estimate of the total number of participants | |
118 | Int_t fNPartSideA; // Estimate of the number of participants side A | |
119 | Int_t fNPartSideC; // Estimate of the number of participants side C | |
120 | Float_t fImpParameter; // Estimate of the impact parameter | |
121 | Float_t fImpParSideA; // Estimate of the impact parameter side A | |
122 | Float_t fImpParSideC; // Estimate of the impact parameter side B | |
1e319f71 | 123 | // |
124 | UInt_t fRecoFlag; // Reconstruction flag | |
077d2505 | 125 | Bool_t fEnergyFlag; // Is the reco value in energy? |
81f09162 | 126 | Bool_t fIsScalerOn; // True if scaler has been read in the event |
127 | UInt_t fZDCScaler[32]; // Counts from ZDC VME scaler | |
82dffa48 | 128 | // |
f53e5ecb | 129 | Int_t fZDCTDCData[32][4]; // TDC data raw |
1450a7cd | 130 | |
077d2505 | 131 | ClassDef(AliZDCReco,14) // RecPoints for the Zero Degree Calorimeters |
1450a7cd | 132 | }; |
133 | ||
134 | #endif |