LCOV - code coverage report
Current view: top level - STEER/AOD - AliAODHMPIDrings.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 2 31 6.5 %
Date: 2016-06-14 17:26:59 Functions: 5 37 13.5 %

          Line data    Source code
       1             : #ifndef ALIAODHMPIDRINGS_H
       2             : #define ALIAODHMPIDRINGS_H
       3             : 
       4             : 
       5             : //
       6             : // Class to handle the AOD tracks with good HMPID rings 
       7             : // Author: Levente Molnar
       8             : // levente.molnar@cern.ch , March 2012
       9             : // 
      10             : 
      11             : 
      12             : 
      13             : //___ROOT includes
      14             : #include <TMath.h>
      15             : //___AliRoot includes
      16             : #include "AliPID.h"
      17             : 
      18             : 
      19             : class AliAODHMPIDrings : public TObject {
      20             :   
      21             :  public:
      22             :   
      23             :   AliAODHMPIDrings();
      24             :   AliAODHMPIDrings(
      25             :                     Int_t trkId,
      26             :                     Int_t qn, 
      27             :                     Int_t cluIdx,
      28             :                     Double_t  trkTheta,
      29             :                     Double_t trkPhi,
      30             :                     Double_t signal,
      31             :                     Double_t occ,
      32             :                     Double_t chi2,
      33             :                     Double_t trkX,
      34             :                     Double_t trkY,
      35             :                     Double_t mipX,
      36             :                     Double_t mipY,
      37             :                     Double_t *pid,
      38             :                     Double_t *p                  );      //              
      39             :       
      40             :       
      41             :   AliAODHMPIDrings(const AliAODHMPIDrings& hmpidAOD);//
      42             :   AliAODHMPIDrings &operator=(const AliAODHMPIDrings& hmpidAOD);//
      43         102 :   virtual ~AliAODHMPIDrings() {};
      44             :     
      45             :   //___ Getters
      46           0 :   Int_t GetHmpTrkID()                const { return fHmpidAODtrkId; }
      47             :   
      48           0 :   Double32_t GetHmpMipCharge()            const { return fHmpidAODqn%1000000; }
      49           0 :   Double32_t GetHmpNumOfPhotonClusters()  const { return fHmpidAODqn/1000000;}
      50             :  
      51           0 :   Int_t      GetHmpChamber()              const { return fHmpidAODcluIdx/1000000; }
      52             :   
      53           0 :   Int_t      GetHmpCluIdx()               const { return fHmpidAODcluIdx; }
      54             :   
      55           0 :   Double_t GetHmpTrackTheta()           const { return fHmpidAODtrkTheta;}
      56           0 :   Double_t GetHmpTrackPhi()             const { return fHmpidAODtrkPhi;}
      57             :   
      58           0 :   Double_t GetHmpSignal()               const { return fHmpidAODsignal;}
      59           0 :   Double_t GetHmpOccupancy()            const { return fHmpidAODocc;}
      60             :   
      61           0 :   Double_t GetHmpChi2()                 const { return fHmpidAODchi2;}
      62             : 
      63           0 :   Double_t GetHmpTrackX()               const { return fHmpidAODtrkX;}
      64           0 :   Double_t GetHmpTrackY()               const { return fHmpidAODtrkY;}
      65             : 
      66           0 :   Double_t GetHmpMipX()                 const { return fHmpidAODmipX;}
      67           0 :   Double_t GetHmpMipY()                 const { return fHmpidAODmipY;}
      68             : 
      69           0 :   Double_t GetHmpDX()                   const { return fHmpidAODmipX - fHmpidAODtrkX;}
      70           0 :   Double_t GetHmpDY()                   const { return fHmpidAODmipY - fHmpidAODtrkY;}
      71           0 :   Double_t GetHmpDist()                 const { return TMath::Sqrt((fHmpidAODmipX - fHmpidAODtrkX)*(fHmpidAODmipX - fHmpidAODtrkX) + (fHmpidAODmipY - fHmpidAODtrkY)*(fHmpidAODmipY - fHmpidAODtrkY));}
      72             :   
      73             :   
      74             :   void GetHmpPidProbs(Double32_t *pid) const;   //defined in cxx
      75             :   void GetHmpMom(Double32_t *mom)      const;   //defined in cxx
      76             :   
      77             :   //___ Setters
      78             :   
      79           0 :   void SetHmpMipCharge(Int_t q)               { fHmpidAODqn = q; }
      80           0 :   void SetHmpCluIdx(Int_t ch,Int_t idx)       { fHmpidAODcluIdx=ch*1000000+idx;}
      81             :   
      82           0 :   void SetHmpNumOfPhotonClusters(Int_t nph)   { fHmpidAODqn = 1000000 * nph;}
      83             :   
      84           0 :   void SetHmpTrackTheta(Double_t trkTheta)  { fHmpidAODtrkTheta = trkTheta;}
      85           0 :   void SetHmpTrackPhi(Double_t trkPhi)      { fHmpidAODtrkPhi = trkPhi;}
      86             :   
      87           0 :   void SetHmpSignal(Double_t thetaC)        { fHmpidAODsignal = thetaC;}
      88           0 :   void SetHmpOccupancy(Double_t occ)        { fHmpidAODocc =  occ;}
      89             :   
      90           0 :   void SetHmpChi2(Double_t chi2)            { fHmpidAODchi2 = chi2;}
      91             : 
      92           0 :   void SetHmpTrackX(Double_t trkX)          { fHmpidAODtrkX = trkX;}
      93           0 :   void SetHmpTrackY(Double_t trkY)          { fHmpidAODtrkY = trkY;}
      94             : 
      95           0 :   void SetHmpMipX(Double_t mipX)            { fHmpidAODmipX = mipX;}
      96           0 :   void SetHmpMipY(Double_t mipY)            { fHmpidAODmipY = mipY;}
      97             :  
      98             :   void SetHmpPidProbs(Double_t *pid);       
      99             :   void SetHmpMom(Double_t *mom);        
     100             :   
     101             :   
     102             :   
     103             :  protected:
     104             :   
     105             :   Int_t       fHmpidAODtrkId;                      // Unique track id as in ESD
     106             :   Int_t       fHmpidAODqn;                         // 1000000*number of photon clusters + QDC
     107             :   Int_t       fHmpidAODcluIdx;                     // 1000000*chamber id + cluster idx of the assigned MIP cluster
     108             :   
     109             :   Double32_t  fHmpidAODtrkTheta;                   // [-2*pi,2*pi,16] theta of the track extrapolated to the HMPID, LORS
     110             :   Double32_t  fHmpidAODtrkPhi;                     // [-2*pi,2*pi,16] theta of the track extrapolated to the HMPID, LORS
     111             :   Double32_t  fHmpidAODsignal;                     // HMPID signal (Theta ckov, rad)
     112             :   Double32_t  fHmpidAODocc;                        // chamber occupancy where the track passed through: number of pads
     113             :   Double32_t  fHmpidAODchi2;                       // [0.,0.,8] chi2 in the HMPID  
     114             :   Double32_t  fHmpidAODtrkX;                       // x of the track impact, LORS 
     115             :   Double32_t  fHmpidAODtrkY;                       // y of the track impact, LORS 
     116             :   Double32_t  fHmpidAODmipX;                       // x of the MIP in LORS
     117             :   Double32_t  fHmpidAODmipY;                       // y of the MIP in LORS
     118             :   Double32_t  fHmpidAODpid[AliPID::kSPECIES];      // [0.,0.,8] "detector response probabilities" (for the PID)
     119             :   Double32_t  fHMPIDmom[3];                        // track momentum at the HMPID ring reconstruction
     120             :   
     121         174 :   ClassDef(AliAODHMPIDrings,2)  
     122             :         
     123             : };
     124             : #endif

Generated by: LCOV version 1.11