public:
AliZDCReco();
- AliZDCReco(Float_t ezn1, Float_t ezp1, Float_t ezn2, Float_t ezp2,
- Float_t* ezn1tow, Float_t* ezp1tow,
- Float_t* ezn2tow, Float_t* ezp2tow,
- Float_t* ezn1siglr, Float_t* ezp1siglr,
- Float_t* ezn2siglr, Float_t* ezp2siglr,
- Float_t ezem1, Float_t ezem2,
+ AliZDCReco(Float_t* ezn1, Float_t* ezp1, Float_t* ezn2, Float_t* ezp2,
+ Float_t* ezn1tow, Float_t* ezp1tow, Float_t* ezn2tow, Float_t* ezp2tow,
+ Float_t* ezem1, Float_t* ezem2, Float_t* ref1, Float_t* ref2,
//
- Int_t detspnLeft, Int_t detsppLeft, Int_t detspnRight, Int_t detsppRight,
- Int_t trspnLeft, Int_t trsppLeft, Int_t trspLeft,
- Int_t trspnRight, Int_t trsppRight, Int_t trspRight,
- Int_t partLeft, Int_t partRight,
- Float_t b);
+ Int_t detspnSideA, Int_t detsppSideA,
+ Int_t detspnSideC, Int_t detsppSideC,
+ Int_t trsp, Int_t trspSideA, Int_t trspSideC,
+ Int_t npart, Int_t npartSideA, Int_t npartSideC,
+ Float_t b, Float_t bSideA, Float_t bSideC,
+ UInt_t recoFlag, Bool_t energyFlag, Bool_t scalerOn,
+ UInt_t* scaler, Int_t tdcData[32][4]);
AliZDCReco(const AliZDCReco &oldreco);
virtual ~AliZDCReco() {}
// Getters
- virtual Float_t GetZN1Energy() const {return fZN1Energy;}
- virtual Float_t GetZP1Energy() const {return fZP1Energy;}
- virtual Float_t GetZN2Energy() const {return fZN2Energy;}
- virtual Float_t GetZP2Energy() const {return fZP2Energy;}
+ virtual Float_t GetZN1HREnergy() const {return fZN1Energy[0];}
+ virtual Float_t GetZP1HREnergy() const {return fZP1Energy[0];}
+ virtual Float_t GetZN2HREnergy() const {return fZN2Energy[0];}
+ virtual Float_t GetZP2HREnergy() const {return fZP2Energy[0];}
//
- virtual Float_t GetZN1EnTow(Int_t tow) const {return fZN1EnTow[tow];}
- virtual Float_t GetZP1EnTow(Int_t tow) const {return fZP1EnTow[tow];}
- virtual Float_t GetZN2EnTow(Int_t tow) const {return fZN2EnTow[tow];}
- virtual Float_t GetZP2EnTow(Int_t tow) const {return fZP2EnTow[tow];}
+ virtual Float_t GetZN1LREnergy() const {return fZN1Energy[1];}
+ virtual Float_t GetZP1LREnergy() const {return fZP1Energy[1];}
+ virtual Float_t GetZN2LREnergy() const {return fZN2Energy[1];}
+ virtual Float_t GetZP2LREnergy() const {return fZP2Energy[1];}
//
- virtual Float_t GetZN1SigLowRes(Int_t tow) const {return fZN1SigLowRes[tow];}
- virtual Float_t GetZP1SigLowRes(Int_t tow) const {return fZP1SigLowRes[tow];}
- virtual Float_t GetZN2SigLowRes(Int_t tow) const {return fZN2SigLowRes[tow];}
- virtual Float_t GetZP2SigLowRes(Int_t tow) const {return fZP2SigLowRes[tow];}
+ virtual Float_t GetZN1HREnTow(Int_t tow) const {return fZN1EnTow[tow];}
+ virtual Float_t GetZP1HREnTow(Int_t tow) const {return fZP1EnTow[tow];}
+ virtual Float_t GetZN2HREnTow(Int_t tow) const {return fZN2EnTow[tow];}
+ virtual Float_t GetZP2HREnTow(Int_t tow) const {return fZP2EnTow[tow];}
//
- virtual Float_t GetZEM1signal() const {return fZEM1signal;}
- virtual Float_t GetZEM2signal() const {return fZEM2signal;}
+ virtual Float_t GetZN1LREnTow(Int_t tow) const {return fZN1EnTow[tow+5];}
+ virtual Float_t GetZP1LREnTow(Int_t tow) const {return fZP1EnTow[tow+5];}
+ virtual Float_t GetZN2LREnTow(Int_t tow) const {return fZN2EnTow[tow+5];}
+ virtual Float_t GetZP2LREnTow(Int_t tow) const {return fZP2EnTow[tow+5];}
//
- virtual Int_t GetNDetSpecNLeft() const {return fNDetSpecNLeft;}
- virtual Int_t GetNDetSpecPLeft() const {return fNDetSpecPLeft;}
- virtual Int_t GetNDetSpecNRight() const {return fNDetSpecNRight;}
- virtual Int_t GetNDetSpecPRight() const {return fNDetSpecPRight;}
- virtual Int_t GetNTrueSpecNLeft() const {return fNTrueSpecNLeft;}
- virtual Int_t GetNTrueSpecPLeft() const {return fNTrueSpecPLeft;}
- virtual Int_t GetNTrueSpecLeft() const {return fNTrueSpecLeft;}
- virtual Int_t GetNTrueSpecNRight() const {return fNTrueSpecNRight;}
- virtual Int_t GetNTrueSpecPRight() const {return fNTrueSpecPRight;}
- virtual Int_t GetNTrueSpecRight() const {return fNTrueSpecRight;}
- virtual Int_t GetNPartLeft() const {return fNPartLeft;}
- virtual Int_t GetNPartRight() const {return fNPartRight;}
- virtual Float_t GetImpPar() const {return fImpPar;}
+ virtual Float_t GetZEM1HRsignal() const {return fZEM1signal[0];}
+ virtual Float_t GetZEM1LRsignal() const {return fZEM1signal[1];}
+ virtual Float_t GetZEM2HRsignal() const {return fZEM2signal[0];}
+ virtual Float_t GetZEM2LRsignal() const {return fZEM2signal[1];}
+ //
+ virtual Float_t GetPMRef1HRsignal() const {return fZEM1signal[0];}
+ virtual Float_t GetPMRef1LRsignal() const {return fZEM1signal[1];}
+ virtual Float_t GetPMRef2HRsignal() const {return fZEM2signal[0];}
+ virtual Float_t GetPMRef2LRsignal() const {return fZEM2signal[1];}
+ //
+ virtual Int_t GetNDetSpecNSideA() const {return fNDetSpecNSideA;}
+ virtual Int_t GetNDetSpecPSideA() const {return fNDetSpecPSideA;}
+ virtual Int_t GetNDetSpecNSideC() const {return fNDetSpecNSideC;}
+ virtual Int_t GetNDetSpecPSideC() const {return fNDetSpecPSideC;}
+ virtual Int_t GetNTrueSpectators() const {return fNTrueSpectators;}
+ virtual Int_t GetNTrueSpecSideA() const {return fNTrueSpecSideA;}
+ virtual Int_t GetNTrueSpecSideC() const {return fNTrueSpecSideC;}
+ virtual Int_t GetNParticipants() const {return fNParticipants;}
+ virtual Int_t GetNPartSideA() const {return fNPartSideA;}
+ virtual Int_t GetNPartSideC() const {return fNPartSideC;}
+ virtual Float_t GetImpParameter() const {return fImpParameter;}
+ virtual Float_t GetImpParSideA() const {return fImpParSideA;}
+ virtual Float_t GetImpParSideC() const {return fImpParSideC;}
+ //
+ virtual UInt_t GetRecoFlag() const {return fRecoFlag;}
+ virtual UInt_t GetZDCPattern() const {return (fRecoFlag & 0x0000003f);}
+ virtual UInt_t GetChOnFlag() const {return (fRecoFlag & 0x00000100);}
+ virtual UInt_t GetChOvflwFlag() const {return (fRecoFlag & 0x00000200);}
+ virtual UInt_t GetChUndflwFlag() const {return (fRecoFlag & 0x00000400);}
+ //
+ virtual Bool_t GetEnergyFlag() const {return fEnergyFlag;}
+ virtual Bool_t IsScalerOn() const {return fIsScalerOn;}
+ virtual UInt_t GetZDCScaler(Int_t k) const {return fZDCScaler[k];}
+ //
+ virtual Int_t GetZDCTDCData(Int_t j, Int_t k) const {return fZDCTDCData[j][k];}
// Print method
virtual void Print(Option_t *) const;
private:
// Data members
- Float_t fZN1Energy; // Energy detected in ZN1 (sum of 5 tower signals)
- Float_t fZP1Energy; // Energy detected in ZP1 (sum of 5 tower signals)
- Float_t fZN2Energy; // Energy detected in ZN2 (sum of 5 tower signals)
- Float_t fZP2Energy; // Energy detected in ZP2 (sum of 5 tower signals)
+ Float_t fZN1Energy[2]; // Energy detected in ZN1 (sum of 5 tower signals)
+ Float_t fZP1Energy[2]; // Energy detected in ZP1 (sum of 5 tower signals)
+ Float_t fZN2Energy[2]; // Energy detected in ZN2 (sum of 5 tower signals)
+ Float_t fZP2Energy[2]; // Energy detected in ZP2 (sum of 5 tower signals)
//
- Float_t fZN1EnTow[5]; // Energy in ZN1 towers
- Float_t fZP1EnTow[5]; // Energy in ZP1 towers
- Float_t fZN2EnTow[5]; // Energy in ZN2 towers
- Float_t fZP2EnTow[5]; // Energy in ZP2 towers
+ Float_t fZN1EnTow[10]; // Energy in ZN1 towers
+ Float_t fZP1EnTow[10]; // Energy in ZP1 towers
+ Float_t fZN2EnTow[10]; // Energy in ZN2 towers
+ Float_t fZP2EnTow[10]; // Energy in ZP2 towers
//
- Float_t fZN1SigLowRes[5]; // Energy in ZN1 towers - low res ch.
- Float_t fZP1SigLowRes[5]; // Energy in ZP1 towers - low res ch.
- Float_t fZN2SigLowRes[5]; // Energy in ZN2 towers - low res ch.
- Float_t fZP2SigLowRes[5]; // Energy in ZP2 towers - low res ch.
+ Float_t fZEM1signal[2];// Signal in EM1 ZDC
+ Float_t fZEM2signal[2];// Signal in EM2 ZDC
//
- Float_t fZEM1signal; // Signal in EM1 ZDC
- Float_t fZEM2signal; // Signal in EM2 ZDC
+ Float_t fPMRef1[2]; // Reference PM side C
+ Float_t fPMRef2[2]; // Reference PM side A
//
- Int_t fNDetSpecNLeft; // Number of spectator neutrons detected
- Int_t fNDetSpecPLeft; // Number of spectator protons detected
- Int_t fNDetSpecNRight; // Number of spectator neutrons detected
- Int_t fNDetSpecPRight; // Number of spectator protons detected
- Int_t fNTrueSpecNLeft; // Estimate of the number of spectator neutrons generated
- Int_t fNTrueSpecPLeft; // Estimate of the number of spectator protons generated
- Int_t fNTrueSpecLeft; // Estimate of the total number of spectators
- Int_t fNTrueSpecNRight;// Estimate of the number of spectator neutrons generated
- Int_t fNTrueSpecPRight;// Estimate of the number of spectator protons generated
- Int_t fNTrueSpecRight; // Estimate of the total number of spectators
- Int_t fNPartLeft; // Estimate of the number of participants for 1 nucleus
- Int_t fNPartRight; // Estimate of the number of participants for 1 nucleus
- Float_t fImpPar; // Estimate of the impact parameter
-
+ Int_t fNDetSpecNSideA; // Number of spectator neutrons detected
+ Int_t fNDetSpecPSideA; // Number of spectator protons detected
+ Int_t fNDetSpecNSideC; // Number of spectator neutrons detected
+ Int_t fNDetSpecPSideC; // Number of spectator protons detected
+ Int_t fNTrueSpectators;// Estimate of the total number of spectators
+ Int_t fNTrueSpecSideA; // Estimate of the number of spectators side A
+ Int_t fNTrueSpecSideC; // Estimate of the number of spectators side C
+ Int_t fNParticipants; // Estimate of the total number of participants
+ Int_t fNPartSideA; // Estimate of the number of participants side A
+ Int_t fNPartSideC; // Estimate of the number of participants side C
+ Float_t fImpParameter; // Estimate of the impact parameter
+ Float_t fImpParSideA; // Estimate of the impact parameter side A
+ Float_t fImpParSideC; // Estimate of the impact parameter side B
+ //
+ UInt_t fRecoFlag; // Reconstruction flag
+ Bool_t fEnergyFlag; // Is the reco value in energy?
+ Bool_t fIsScalerOn; // True if scaler has been read in the event
+ UInt_t fZDCScaler[32]; // Counts from ZDC VME scaler
+ //
+ Int_t fZDCTDCData[32][4]; // TDC data raw
- ClassDef(AliZDCReco,4) // RecPoints for the Zero Degree Calorimeters
+ ClassDef(AliZDCReco,14) // RecPoints for the Zero Degree Calorimeters
};
#endif