LCOV - code coverage report
Current view: top level - STEER/AOD - AliAODZDC.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 7 54 13.0 %
Date: 2016-06-14 17:26:59 Functions: 8 59 13.6 %

          Line data    Source code
       1             : #ifndef ALIAODZDC_H
       2             : #define ALIAODZDC_H
       3             : 
       4             : //-------------------------------------------------------------------------
       5             : //     Class for AOD ZDC data
       6             : //     Author: Chiara Oppedisano
       7             : //     Chiara.Oppedisano@cern.ch March 2011
       8             : //-------------------------------------------------------------------------
       9             : 
      10             : #include <AliVZDC.h>
      11             : 
      12             : class AliAODZDC : public AliVZDC {
      13             : public:
      14             : 
      15             :   AliAODZDC();
      16             :   AliAODZDC(const AliAODZDC& zdcAOD);
      17             :   AliAODZDC &operator=(const AliAODZDC& zdcAOD);
      18             :  
      19           0 :   virtual ~AliAODZDC() {};
      20             :  
      21             :   // Getters  
      22             :    
      23           0 :   virtual Short_t  GetZDCParticipants() const {return fZDCParticipants;}
      24           0 :   virtual Short_t  GetZDCPartSideA()    const {return fZDCPartSideA;}
      25           0 :   virtual Short_t  GetZDCPartSideC()    const {return fZDCPartSideC;}
      26           0 :   virtual Double_t GetImpactParameter()  const {return fImpactParameter;}
      27           0 :   virtual Double_t GetImpactParamSideA() const {return fImpactParamSideA;}
      28           0 :   virtual Double_t GetImpactParamSideC() const {return fImpactParamSideC;}
      29             : 
      30           0 :   virtual Double_t GetZNCEnergy() const {return fZNCEnergy;}
      31           0 :   virtual Double_t GetZPCEnergy() const {return fZPCEnergy;}
      32           0 :   virtual Double_t GetZNAEnergy() const {return fZNAEnergy;}
      33           0 :   virtual Double_t GetZPAEnergy() const {return fZPAEnergy;}
      34           0 :   virtual Double_t GetZEM1Energy() const {return fZEM1Energy;}
      35           0 :   virtual Double_t GetZEM2Energy() const {return fZEM2Energy;}
      36             :   
      37           0 :   virtual const Double_t *GetZNCTowerEnergy() const {return fZNCTowerEnergy;}
      38           0 :   virtual const Double_t *GetZNATowerEnergy() const {return fZNATowerEnergy;}
      39           0 :   virtual const Double_t *GetZPCTowerEnergy() const {return fZPCTowerEnergy;}
      40           0 :   virtual const Double_t *GetZPATowerEnergy() const {return fZPATowerEnergy;}
      41           0 :   virtual const Double_t *GetZNCTowerEnergyLR() const {return fZNCTowerEnergyLR;}
      42           0 :   virtual const Double_t *GetZNATowerEnergyLR() const {return fZNATowerEnergyLR;}
      43           0 :   virtual const Double_t *GetZPCTowerEnergyLR() const {return fZPCTowerEnergyLR;}
      44           0 :   virtual const Double_t *GetZPATowerEnergyLR() const {return fZPATowerEnergyLR;}
      45             :   
      46             :   virtual Bool_t GetZNCentroidInPbPb(Float_t beamEne, Double_t centrZNC[2], Double_t centrZNA[2]);
      47             :   virtual Bool_t GetZNCentroidInpp(Double_t centrZNC[2], Double_t centrZNA[2]);
      48             : 
      49             :   // Setters dealing only with the 1st stored TDC hit
      50           0 :   virtual Float_t GetZNCTime() const {return fZNCTDC;}
      51           0 :   virtual Float_t GetZNATime() const {return fZNATDC;}
      52           0 :   virtual Float_t GetZPCTime() const {return fZPCTDC;}
      53           0 :   virtual Float_t GetZPATime() const {return fZPATDC;}
      54             :   //
      55           0 :   virtual Float_t GetZDCTimeSum() const {return fZDCTDCSum;}
      56           0 :   virtual Float_t GetZDCTimeDiff() const {return fZDCTDCDifference;}
      57             : 
      58             :   // Jan.2016: propagating multi-hit structure of TDC hits to AODs
      59           0 :   virtual Float_t GetZNCTDCm(Int_t i) const {return fZNCTDCm[i];}
      60           0 :   virtual Float_t GetZNATDCm(Int_t i) const {return fZNATDCm[i];}
      61           0 :   virtual Float_t GetZPCTDCm(Int_t i) const {return fZPCTDCm[i];}
      62           0 :   virtual Float_t GetZPATDCm(Int_t i) const {return fZPATDCm[i];}
      63             :   //
      64             :   virtual Bool_t GetTDCSum(Float_t sum[4]); 
      65             :   virtual Bool_t GetTDCDiff(Float_t diff[4]); 
      66             :   //
      67           0 :   virtual Bool_t  IsZNAfired() {return fIsZNAfired;}
      68           0 :   virtual Bool_t  IsZNCfired() {return fIsZNCfired;}
      69           0 :   virtual Bool_t  IsZNANDfired() {if(IsZNAfired() &&IsZNCfired()) return kTRUE;
      70           0 :                                   else return kFALSE;}
      71             : 
      72             :   // Setters  
      73             :   
      74          16 :   void  SetZEM1Energy(const Double_t zem1) {fZEM1Energy = zem1;}
      75          16 :   void  SetZEM2Energy(const Double_t zem2) {fZEM2Energy = zem2;}
      76             :   void  SetZNCTowers(const Double_t value[5], const Double_t valueLG[5]);
      77             :   void  SetZNATowers(const Double_t value[5], const Double_t valueLG[5]);
      78             :   void  SetZPCTowers(const Double_t value[5], const Double_t valueLG[5]);
      79             :   void  SetZPATowers(const Double_t value[5], const Double_t valueLG[5]);
      80             :   
      81             :   void  SetZDCParticipants(Int_t npart, Int_t npartA, Int_t npartC) 
      82          16 :         {fZDCParticipants=npart; fZDCPartSideA=npartA; fZDCPartSideC=npartC;}  
      83             :   void  SetZDCImpactParameter(Float_t b, Float_t bA, Float_t bC)
      84          16 :         {fImpactParameter=b; fImpactParamSideA=bA; fImpactParamSideC=bC;}
      85             :  
      86             :   // Setters dealing only with the 1st stored TDC hit
      87          16 :   void  SetZDCTDCSum(Float_t tdc)  {fZDCTDCSum = tdc;}
      88          16 :   void  SetZDCTDCDiff(Float_t tdc) {fZDCTDCDifference = tdc;}
      89             :   //
      90           0 :   void  SetZNCTDC(Float_t tdc) {fZNCTDC = tdc;}
      91           0 :   void  SetZNATDC(Float_t tdc) {fZNATDC = tdc;}
      92           0 :   void  SetZPCTDC(Float_t tdc) {fZPCTDC = tdc;}
      93           0 :   void  SetZPATDC(Float_t tdc) {fZPATDC = tdc;}
      94             : 
      95             :   // Jan.2016: propagating multi-hit structure of TDC hits to AODs
      96           0 :   void  SetZNCTDCm(Int_t i, Float_t tdc) {fZNCTDCm[i] = tdc;}
      97           0 :   void  SetZNATDCm(Int_t i, Float_t tdc) {fZNATDCm[i] = tdc;}
      98           0 :   void  SetZPCTDCm(Int_t i, Float_t tdc) {fZPCTDCm[i] = tdc;}
      99           0 :   void  SetZPATDCm(Int_t i, Float_t tdc) {fZPATDCm[i] = tdc;}
     100             :   //
     101           0 :   void  SetZNAfired() {fIsZNAfired = kTRUE;}
     102           0 :   void  SetZNCfired() {fIsZNCfired = kTRUE;}
     103           0 :   void  SetZPAfired() {fIsZPAfired = kTRUE;}
     104           0 :   void  SetZPCfired() {fIsZPCfired = kTRUE;}
     105             :  
     106             : protected:
     107             :   
     108             :   mutable Double32_t   fZNCEnergy;    //!E in ZNC
     109             :   mutable Double32_t   fZNAEnergy;    //!E in ZNA
     110             :   mutable Double32_t   fZPCEnergy;    //!E in ZPC
     111             :   mutable Double32_t   fZPAEnergy;    //!E in ZPA
     112             :   Double32_t   fZEM1Energy;           // E in ZEM1
     113             :   Double32_t   fZEM2Energy;           // E in ZEM2
     114             :   Double32_t   fZNCTowerEnergy[5];    // E in 5 ZNC sectors - high gain chain
     115             :   Double32_t   fZNATowerEnergy[5];    // E in 5 ZNA sectors - high gain chain
     116             :   Double32_t   fZPCTowerEnergy[5];    // E in 5 ZPC sectors - high gain chain
     117             :   Double32_t   fZPATowerEnergy[5];    // E in 5 ZPA sectors - high gain chain
     118             :   Double32_t   fZNCTowerEnergyLR[5];  // E in 5 ZNC sectors - low gain chain
     119             :   Double32_t   fZNATowerEnergyLR[5];  // E in 5 ZNA sectors - low gain chain
     120             :   Double32_t   fZPCTowerEnergyLR[5];  // E in 5 ZPC sectors - low gain chain
     121             :   Double32_t   fZPATowerEnergyLR[5];  // E in 5 ZPA sectors - low gain chain
     122             :   //
     123             :   Int_t     fZDCParticipants;      // number of participants estimated by the ZDC (ONLY in A-A)
     124             :   Int_t     fZDCPartSideA;         // number of participants estimated by the ZDC (ONLY in A-A)
     125             :   Int_t     fZDCPartSideC;         // number of participants estimated by the ZDC (ONLY in A-A)
     126             :   //
     127             :   Double32_t   fImpactParameter;   // impact parameter estimated by the ZDC (ONLY in A-A)
     128             :   Double32_t   fImpactParamSideA;  // impact parameter estimated by the ZDC (ONLY in A-A)
     129             :   Double32_t   fImpactParamSideC;  // impact parameter estimated by the ZDC (ONLY in A-A)
     130             :   //
     131             :   // These data members deals only with the 1st stored TDC hit
     132             :   Float_t   fZDCTDCSum;            // ZDC TDC sum in ns corrected 4 phase shift
     133             :   Float_t   fZDCTDCDifference;     // ZDC TDC diff. in ns corrected 4 phase shift
     134             :   Float_t   fZNCTDC;               // ZNC TDC in ns corrected 4 phase shift        
     135             :   Float_t   fZNATDC;               // ZNA TDC in ns corrected 4 phase shift;     
     136             :   Float_t   fZPCTDC;               // ZNC TDC in ns corrected 4 phase shift        
     137             :   Float_t   fZPATDC;               // ZNA TDC in ns corrected 4 phase shift;     
     138             :   //
     139             :   // Jan.2016: propagating multi-hit structure of TDC hits to AODs
     140             :   Float_t   fZNCTDCm[4];        // true if ZNC TDC has at least 1 hit
     141             :   Float_t   fZNATDCm[4];        // true if ZNA TDC has at least 1 hit
     142             :   Float_t   fZPCTDCm[4];        // true if ZPC TDC has at least 1 hit
     143             :   Float_t   fZPATDCm[4];        // true if ZPA TDC has at least 1 hit
     144             :   //
     145             :   Bool_t    fIsZNAfired;        // if true ZNA is fired in the event 
     146             :   Bool_t    fIsZNCfired;        // if true ZNC is fired in the event 
     147             :   Bool_t    fIsZPAfired;        // if true ZPA is fired in the event 
     148             :   Bool_t    fIsZPCfired;        // if true ZPC is fired in the event
     149             :   
     150             : 
     151         290 :   ClassDef(AliAODZDC,4)
     152             : };
     153             : 
     154             : #endif

Generated by: LCOV version 1.11