// Implementation of Class AliESDZDC
// This is a class that summarizes the ZDC data for the ESD
// Origin: Christian Klein-Boesing, CERN, Christian.Klein-Boesing@cern.ch
+// *** 15/10/2009 Scaler added to AliESDZDC class ***
+// *** Scaler format: 32 floats from VME scaler ***
//-------------------------------------------------------------------------
#include <TObject.h>
-#include <TMath.h>
-#include <TF1.h>
-
class AliESDZDC: public TObject {
public:
const Double_t * GetZP1TowerEnergyLR() const {return fZP1TowerEnergyLR;}
const Double_t * GetZP2TowerEnergyLR() const {return fZP2TowerEnergyLR;}
//
- Double32_t * GetZNCCentroid();
- Double32_t * GetZNACentroid();
+ Bool_t GetZNCentroidInPbPb(Float_t beamEne, Double_t centrZNC[2], Double_t centrZNA[2]);
+ Bool_t GetZNCentroidInpp(Double_t centrZNC[2], Double_t centrZNA[2]);
//
void SetZDC(Double_t n1Energy, Double_t p1Energy,
Double_t emEnergy0, Double_t emEnergy1,
fImpactParameter=b; fImpactParamSideA=bA, fImpactParamSideC=bC,
fESDQuality=recoFlag;}
//
- void SetZN1TowerEnergy(Float_t tow1[5])
+ void SetZN1TowerEnergy(const Float_t tow1[5])
{for(Int_t i=0; i<5; i++) fZN1TowerEnergy[i] = tow1[i];}
- void SetZN2TowerEnergy(Float_t tow2[5])
+ void SetZN2TowerEnergy(const Float_t tow2[5])
{for(Int_t i=0; i<5; i++) fZN2TowerEnergy[i] = tow2[i];}
- void SetZP1TowerEnergy(Float_t tow1[5])
+ void SetZP1TowerEnergy(const Float_t tow1[5])
{for(Int_t i=0; i<5; i++) fZP1TowerEnergy[i] = tow1[i];}
- void SetZP2TowerEnergy(Float_t tow2[5])
+ void SetZP2TowerEnergy(const Float_t tow2[5])
{for(Int_t i=0; i<5; i++) fZP2TowerEnergy[i] = tow2[i];}
- void SetZN1TowerEnergyLR(Float_t tow1[5])
+ void SetZN1TowerEnergyLR(const Float_t tow1[5])
{for(Int_t i=0; i<5; i++) fZN1TowerEnergyLR[i] = tow1[i];}
- void SetZN2TowerEnergyLR(Float_t tow2[5])
+ void SetZN2TowerEnergyLR(const Float_t tow2[5])
{for(Int_t i=0; i<5; i++) fZN2TowerEnergyLR[i] = tow2[i];}
- void SetZP1TowerEnergyLR(Float_t tow1[5])
+ void SetZP1TowerEnergyLR(const Float_t tow1[5])
{for(Int_t i=0; i<5; i++) fZP1TowerEnergyLR[i] = tow1[i];}
- void SetZP2TowerEnergyLR(Float_t tow2[5])
+ void SetZP2TowerEnergyLR(const Float_t tow2[5])
{for(Int_t i=0; i<5; i++) fZP2TowerEnergyLR[i] = tow2[i];}
- void SetZNACentroid(Float_t centrCoord[2])
+ void SetZNACentroid(const Float_t centrCoord[2])
{for(Int_t i=0; i<2; i++) fZNACentrCoord[i] = centrCoord[i];}
- void SetZNCCentroid(Float_t centrCoord[2])
+ void SetZNCCentroid(const Float_t centrCoord[2])
{for(Int_t i=0; i<2; i++) fZNCCentrCoord[i] = centrCoord[i];}
+ UInt_t GetZDCScaler(Int_t i) const {return fVMEScaler[i];}
+ const UInt_t* GetZDCScaler() const {return fVMEScaler;}
+
+ void SetZDCScaler(const UInt_t count[32])
+ {for(Int_t k=0; k<32; k++) fVMEScaler[k] = count[k];}
+
void Reset();
void Print(const Option_t *opt=0) const;
Double32_t fZNCCentrCoord[2]; // Coordinates of the centroid over ZNA
UInt_t fESDQuality; // flags from reconstruction
//
- ClassDef(AliESDZDC,10)
+ UInt_t fVMEScaler[32]; // counts from VME scaler
+
+ ClassDef(AliESDZDC,12)
};
#endif