LCOV - code coverage report
Current view: top level - STEER/STEERBase - AliPIDResponse.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 4 44 9.1 %
Date: 2016-06-14 17:26:59 Functions: 4 48 8.3 %

          Line data    Source code
       1             : #ifndef ALIPIDRESPONSE_H
       2             : #define ALIPIDRESPONSE_H
       3             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       4             :  * See cxx source for full Copyright notice                               */
       5             : 
       6             : //---------------------------------------------------------------//
       7             : //        Base class for handling the pid response               //
       8             : //        functions of all detectors                             //
       9             : //        and give access to the nsigmas                         //
      10             : //                                                               //
      11             : //   Origin: Jens Wiechula, Uni Tuebingen, jens.wiechula@cern.ch //
      12             : //---------------------------------------------------------------//
      13             : 
      14             : #include "AliVParticle.h"
      15             : #include "AliVTrack.h"
      16             : 
      17             : #include "AliITSPIDResponse.h"
      18             : #include "AliTPCPIDResponse.h"
      19             : #include "AliTRDPIDResponse.h"
      20             : #include "AliTOFPIDResponse.h"
      21             : #include "AliHMPIDPIDResponse.h"
      22             : #include "AliEMCALPIDResponse.h"
      23             : #include "AliPID.h"
      24             : 
      25             : #include "TNamed.h"
      26             : 
      27             : class TF1;
      28             : class TObjArray;
      29             : class TLinearFitter;
      30             : 
      31             : class AliVEvent;
      32             : class AliMCEvent;
      33             : class AliTRDPIDResponseObject;
      34             : class AliTRDdEdxParams;
      35             : class AliTOFPIDParams;
      36             : class AliHMPIDPIDParams;
      37             : class AliOADBContainer;
      38             : 
      39             : class AliPIDResponse : public TNamed {
      40             : public:
      41             :   AliPIDResponse(Bool_t isMC=kFALSE);
      42             :   virtual ~AliPIDResponse();
      43             : 
      44             :   enum EDetector {
      45             :     kITS=0,
      46             :     kTPC=1,
      47             :     kTRD=2,
      48             :     kTOF=3,
      49             :     kHMPID=4,
      50             :     kEMCAL=5,
      51             :     kPHOS=6,
      52             :     kNdetectors=7
      53             :   };
      54             : 
      55             :   enum EDetCode {
      56             :     kDetITS = 0x1,
      57             :     kDetTPC = 0x2,
      58             :     kDetTRD = 0x4,
      59             :     kDetTOF = 0x8,
      60             :     kDetHMPID = 0x10,
      61             :     kDetEMCAL = 0x20,
      62             :     kDetPHOS = 0x40
      63             :   };
      64             : 
      65             :   enum EBeamType {
      66             :     kPP = 0,
      67             :     kPPB,
      68             :     kPBPB
      69             :   };
      70             : 
      71             :   enum EStartTimeType_t {kFILL_T0,kTOF_T0, kT0_T0, kBest_T0};
      72             : 
      73             :   enum ITSPIDmethod { kITSTruncMean, kITSLikelihood };
      74             : 
      75             :   enum EDetPidStatus {
      76             :     kDetNoSignal=0,
      77             :     kDetPidOk=1,
      78             :     kDetMismatch=2,
      79             :     kDetNoParams=3
      80             :   };
      81             : 
      82           0 :   AliITSPIDResponse &GetITSResponse() {return fITSResponse;}
      83          16 :   AliTPCPIDResponse &GetTPCResponse() {return fTPCResponse;}
      84    20882548 :   AliTOFPIDResponse &GetTOFResponse() {return fTOFResponse;}
      85           0 :   AliTRDPIDResponse &GetTRDResponse() {return fTRDResponse;}
      86           0 :   AliEMCALPIDResponse &GetEMCALResponse() {return fEMCALResponse;}
      87             : 
      88             :   // -----------------------------------------
      89             :   // buffered getters
      90             :   //
      91             : 
      92             :   // Number of sigmas
      93             :   EDetPidStatus NumberOfSigmas(EDetector detCode, const AliVParticle *track, AliPID::EParticleType type, Double_t &val) const;
      94             : 
      95             :   Float_t NumberOfSigmas(EDetector detCode, const AliVParticle *track, AliPID::EParticleType type) const;
      96             : 
      97             :   virtual Float_t NumberOfSigmasITS  (const AliVParticle *track, AliPID::EParticleType type) const;
      98             :   virtual Float_t NumberOfSigmasTPC  (const AliVParticle *track, AliPID::EParticleType type) const;
      99             :   virtual Float_t NumberOfSigmasTPC  (const AliVParticle *track, AliPID::EParticleType type, AliTPCPIDResponse::ETPCdEdxSource dedxSource) const;
     100             :   virtual Float_t NumberOfSigmasTRD  (const AliVParticle *track, AliPID::EParticleType type) const;
     101             :   virtual Float_t NumberOfSigmasEMCAL(const AliVParticle *track, AliPID::EParticleType type, Double_t &eop, Double_t showershape[4]) const;
     102             :   virtual Float_t NumberOfSigmasTOF  (const AliVParticle *track, AliPID::EParticleType type) const;
     103           0 :   virtual Float_t NumberOfSigmasTOF  (const AliVParticle *track, AliPID::EParticleType type, Float_t /*timeZeroTOF*/) const { return NumberOfSigmasTOF(track,type); }
     104             :   virtual Float_t NumberOfSigmasHMPID(const AliVParticle *track, AliPID::EParticleType type) const;
     105             :   virtual Float_t NumberOfSigmasEMCAL(const AliVParticle *track, AliPID::EParticleType type) const;
     106             : 
     107             :   Bool_t IdentifiedAsElectronTRD(const AliVTrack *track, Double_t efficiencyLevel,Double_t centrality=-1,AliTRDPIDResponse::ETRDPIDMethod PIDmethod=AliTRDPIDResponse::kLQ1D) const;
     108             :   Bool_t IdentifiedAsElectronTRD(const AliVTrack *track, Int_t &ntracklets, Double_t efficiencyLevel,Double_t centrality=-1,AliTRDPIDResponse::ETRDPIDMethod PIDmethod=AliTRDPIDResponse::kLQ1D) const;
     109             : 
     110             : 
     111             :   // Signal delta
     112             :   EDetPidStatus GetSignalDelta(EDetector detCode, const AliVParticle *track, AliPID::EParticleType type, Double_t &val, Bool_t ratio=kFALSE) const;
     113             :   Double_t GetSignalDelta(EDetector detCode, const AliVParticle *track, AliPID::EParticleType type, Bool_t ratio=kFALSE) const;
     114             : 
     115             :   // Probabilities
     116             :   EDetPidStatus ComputePIDProbability  (EDetCode  detCode, const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     117             :   EDetPidStatus ComputePIDProbability  (EDetector detCode, const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     118             : 
     119             :   virtual EDetPidStatus ComputeITSProbability  (const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     120             :   virtual EDetPidStatus ComputeTPCProbability  (const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     121             :   virtual EDetPidStatus ComputeTOFProbability  (const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     122             :   virtual EDetPidStatus ComputeTRDProbability  (const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     123             :   virtual EDetPidStatus ComputeEMCALProbability(const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     124             :   virtual EDetPidStatus ComputePHOSProbability (const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     125             :   virtual EDetPidStatus ComputeHMPIDProbability(const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     126             : 
     127             :   virtual EDetPidStatus ComputeTRDProbability  (const AliVTrack *track, Int_t nSpecies, Double_t p[],AliTRDPIDResponse::ETRDPIDMethod PIDmethod) const;
     128             : 
     129             :   // pid status
     130             :   EDetPidStatus CheckPIDStatus(EDetector detCode, const AliVTrack *track)  const;
     131             : 
     132           0 :   AliTOFPIDParams *GetTOFPIDParams() const {return fTOFPIDParams;}
     133             :   Float_t GetTOFMismatchProbability(const AliVTrack *track = NULL) const; // if empty argument return the value stored during TOF probability computation
     134             : 
     135          16 :   void SetITSPIDmethod(ITSPIDmethod pmeth) { fITSPIDmethod = pmeth; }
     136             : 
     137           0 :   void SetOADBPath(const char* path) {fOADBPath=path;}
     138           0 :   const char *GetOADBPath() const {return fOADBPath.Data();}
     139             : 
     140           0 :   void SetCustomTPCpidResponse(const char* tpcpid) { fCustomTPCpidResponse = tpcpid; }
     141           0 :   const char* GetCustomTPCpidResponse() const { return fCustomTPCpidResponse.Data(); }
     142             : 
     143           0 :   void SetCustomTPCpidResponseOADBFile(const char* tpcpid) { fCustomTPCpidResponseOADBFile = tpcpid; }
     144           0 :   const char* GetCustomTPCpidResponseOADBFile() const { return fCustomTPCpidResponseOADBFile.Data(); }
     145             : 
     146           0 :   void SetCustomTPCetaMaps(const char* tpcEtaMaps) { fCustomTPCetaMaps = tpcEtaMaps; }
     147           0 :   const char* GetCustomTPCetaMaps() const { return fCustomTPCetaMaps.Data(); }
     148             : 
     149             :   void InitialiseEvent(AliVEvent *event, Int_t pass, Int_t run=-1);
     150           0 :   void SetCurrentFile(const char* file) { fCurrentFile=file; }
     151             : 
     152           0 :   void SetCurrentAliRootRev(Int_t alirootRev) { fCurrentAliRootRev = alirootRev; }
     153           0 :   Int_t GetCurrentAliRootRev() const { return fCurrentAliRootRev; }
     154             : 
     155             :   // cache PID in the track
     156           0 :   void SetCachePID(Bool_t cache)    { fCachePID=cache;  }
     157           0 :   Bool_t GetCachePID() const { return fCachePID; }
     158             :   void FillTrackDetectorPID(const AliVTrack *track, EDetector detector) const;
     159             :   void FillTrackDetectorPID();
     160             : 
     161           0 :   AliVEvent*  GetCurrentEvent()   const {return fCurrentEvent;  }
     162           0 :   AliMCEvent* GetCurrentMCEvent() const {return fCurrentMCEvent;}
     163           0 :   void SetCurrentMCEvent(AliMCEvent* mcEvent) {fCurrentMCEvent=mcEvent;}
     164             : 
     165             :   // User settings for the MC period and reco pass
     166           0 :   void SetMCperiod(const char *mcPeriod) {fMCperiodUser=mcPeriod;}
     167           0 :   void SetRecoPass(Int_t recoPass)       {fRecoPassUser=recoPass;}
     168             : 
     169             :   // event info
     170           0 :   Float_t GetCurrentCentrality() const {return fCurrCentrality;};
     171           0 :   void SetCurrentCentrality(Float_t centrality) {fCurrCentrality=centrality;fEMCALResponse.SetCentrality(fCurrCentrality);};
     172             :   // TPC setting
     173           0 :   void SetUseTPCEtaCorrection(Bool_t useEtaCorrection = kTRUE) { fUseTPCEtaCorrection = useEtaCorrection; };
     174           0 :   Bool_t UseTPCEtaCorrection() const { return fUseTPCEtaCorrection; };
     175             : 
     176           0 :   void SetUseTPCMultiplicityCorrection(Bool_t useMultiplicityCorrection = kTRUE) { fUseTPCMultiplicityCorrection = useMultiplicityCorrection; };
     177           0 :   Bool_t UseTPCMultiplicityCorrection() const { return fUseTPCMultiplicityCorrection; };
     178             : 
     179             :   // TRD setting
     180           0 :   void SetUseTRDEtaCorrection(Bool_t useTRDEtaCorrection = kTRUE) { fUseTRDEtaCorrection = useTRDEtaCorrection; };
     181           0 :   Bool_t UseTRDEtaCorrection() const { return fUseTRDEtaCorrection; };
     182             : 
     183             : 
     184             : 
     185             :   // TOF setting
     186           0 :   void SetTOFtail(Float_t tail=0.9){if(tail > 0) fTOFtail=tail; else printf("TOF tail should be greater than 0 (nothing done)\n");};
     187             :   void SetTOFResponse(AliVEvent *vevent,EStartTimeType_t option);
     188             : 
     189             :   // TunedOnData functionality
     190             :   virtual Float_t GetITSsignalTunedOnData(const AliVTrack *t) const;
     191             :   virtual Float_t GetTPCsignalTunedOnData(const AliVTrack *t) const;
     192             :   virtual Float_t GetTOFsignalTunedOnData(const AliVTrack *t) const;
     193             : 
     194           0 :   Bool_t IsTunedOnData() const {return fTuneMConData;};
     195           0 :   void SetTunedOnData(Bool_t flag=kTRUE,Int_t recoPass=0){fTuneMConData = flag; if(recoPass>0) fRecoPassUser = recoPass;};
     196           0 :   Int_t GetTunedOnDataMask() const {return fTuneMConDataMask;};
     197           0 :   void SetTunedOnDataMask(Int_t detMask) {fTuneMConDataMask = detMask;}
     198             : 
     199             :   // Utilities
     200             : 
     201             :   AliPIDResponse(const AliPIDResponse &other);
     202             :   AliPIDResponse& operator=(const AliPIDResponse &other);
     203             : 
     204           0 :   EBeamType GetBeamType() const {return fBeamTypeNum;};
     205             : 
     206           0 :   void SetNoTOFmism(Bool_t value=kTRUE){fNoTOFmism=value;};
     207             : 
     208             : protected:
     209             :   AliITSPIDResponse   fITSResponse;    //PID response function of the ITS
     210             :   AliTPCPIDResponse   fTPCResponse;    //PID response function of the TPC
     211             :   AliTRDPIDResponse   fTRDResponse;    //PID response function of the TRD
     212             :   AliTOFPIDResponse   fTOFResponse;    //PID response function of the TOF
     213             :   AliHMPIDPIDResponse fHMPIDResponse;  //PID response function of the HMPID
     214             :   AliEMCALPIDResponse fEMCALResponse;  //PID response function of the EMCAL
     215             : 
     216             :   Float_t           fRange;          // nSigma max in likelihood
     217             :   ITSPIDmethod      fITSPIDmethod;   // 0 = trunc mean; 1 = likelihood
     218             : 
     219             :   //unbuffered PID calculation
     220           0 :   virtual Float_t GetNumberOfSigmasTOFold  (const AliVParticle */*track*/, AliPID::EParticleType /*type*/) const {return 0;}
     221           0 :   virtual Float_t GetSignalDeltaTOFold(const AliVParticle */*track*/, AliPID::EParticleType /*type*/, Bool_t /*ratio*/=kFALSE) const {return -9999.;}
     222             : 
     223             :   Int_t CalculateTRDResponse(const AliVTrack *track, Double_t p[],AliTRDPIDResponse::ETRDPIDMethod PIDmethod) const;
     224             :   EDetPidStatus GetComputeTRDProbability  (const AliVTrack *track, Int_t nSpecies, Double_t p[],AliTRDPIDResponse::ETRDPIDMethod PIDmethod=AliTRDPIDResponse::kLQ1D) const;
     225             :   EDetPidStatus GetTOFPIDStatus(const AliVTrack *track) const;
     226             : 
     227             :   Bool_t fTuneMConData;                // switch to force the MC to be similar to data
     228             :   Int_t fTuneMConDataMask;             // select for which detectors enable MC tuning on data
     229             : 
     230             : 
     231             : private:
     232             :   static Float_t fgTOFmismatchProb;    // TOF mismatch probability (Bayesian)
     233             : 
     234             :   Bool_t fIsMC;                        //  If we run on MC data
     235             :   Bool_t fCachePID;
     236             : 
     237             :   TString fOADBPath;                   // OADB path to use
     238             :   TString fCustomTPCpidResponse;       // Custom TPC Pid Response file for debugging purposes
     239             :   TString fCustomTPCpidResponseOADBFile;// Custom TPC Pid Response file for debugging purposes using the new OADB method
     240             :   TString fCustomTPCetaMaps;           // Custom TPC eta map file for debugging purposes
     241             : 
     242             :   TString fBeamType;                   //! beam type (PP) or (PBPB)
     243             :   TString fLHCperiod;                  //! LHC period
     244             :   TString fMCperiodTPC;                //! corresponding MC period to use for the TPC splines
     245             :   TString fMCperiodUser;               //  MC prodution requested by the user
     246             :   TString fCurrentFile;                //! name of currently processed file
     247             :   Int_t   fCurrentAliRootRev;          //! Aliroot rev. used to reconstruct the data
     248             :   Int_t   fRecoPass;                   //! reconstruction pass
     249             :   Int_t   fRecoPassUser;               //  reconstruction pass explicitly set by the user
     250             :   Int_t   fRun;                        //! current run number
     251             :   Int_t   fOldRun;                     //! current run number
     252             :   Float_t fResT0A;                     //! T0A resolution in current run
     253             :   Float_t fResT0C;                     //! T0C resolution in current run
     254             :   Float_t fResT0AC;                    //! T0A.and.T0C resolution in current run
     255             : 
     256             :   TObjArray *fTPCPIDResponseArray;      //! Array with PID response parametrisations (new object)
     257             :   TObjArray *fArrPidResponseMaster;     //! TPC pid splines (old object)
     258             :   TF1       *fResolutionCorrection;     //! TPC resolution correction
     259             :   AliOADBContainer* fOADBvoltageMaps;   //! container with the voltage maps
     260             :   Bool_t fUseTPCEtaCorrection;          // Use TPC eta correction
     261             :   Bool_t fUseTPCMultiplicityCorrection; // Use TPC multiplicity correction
     262             :   Bool_t fUseTPCNewResponse;            // Use new method for TPC PID response
     263             : 
     264             :   AliTRDPIDResponseObject *fTRDPIDResponseObject; //! TRD PID Response Object
     265             :   AliTRDdEdxParams * fTRDdEdxParams; //! TRD dEdx Response for truncated mean signal
     266             :   Bool_t fUseTRDEtaCorrection;          // Use TRD eta correction
     267             : 
     268             :   Float_t fTOFtail;                    //! TOF tail effect used in TOF probability
     269             :   AliTOFPIDParams *fTOFPIDParams;      //! TOF PID Params - period depending (OADB loaded)
     270             : 
     271             :   AliHMPIDPIDParams *fHMPIDPIDParams;  //! HMPID PID Params (OADB loaded)
     272             : 
     273             :   TObjArray *fEMCALPIDParams;          //! EMCAL PID Params
     274             : 
     275             :   AliVEvent  *fCurrentEvent;           //! event currently being processed
     276             :   AliMCEvent *fCurrentMCEvent;         //! MC event of event currently being processed
     277             : 
     278             :   Float_t fCurrCentrality;             //! current centrality
     279             : 
     280             :   EBeamType fBeamTypeNum;              //! beam type enum
     281             : 
     282             :   Bool_t fNoTOFmism;                   //! flag to switch off the TOF mismatch in the TOF weights (to check with old aliroot version)
     283             : 
     284             :   void ExecNewRun();
     285             : 
     286             :   //
     287             :   //setup parametrisations
     288             :   //
     289             : 
     290             :   //ITS
     291             :   void SetITSParametrisation();
     292             : 
     293             :   //TPC
     294             :   void SetTPCEtaMaps(Double_t refineFactorMapX = 6.0, Double_t refineFactorMapY = 6.0, Double_t refineFactorSigmaMapX = 6.0,
     295             :                      Double_t refineFactorSigmaMapY = 6.0);
     296             :   Bool_t InitializeTPCResponse();
     297             :   void SetTPCPidResponseMaster();
     298             :   void SetTPCParametrisation();
     299             :   Double_t GetTPCMultiplicityBin(const AliVEvent * const event);
     300             : 
     301             :   // TPC helpers for the eta maps
     302             :   void AddPointToHyperplane(TH2D* h, TLinearFitter* linExtrapolation, Int_t binX, Int_t binY);
     303             :   TH2D* RefineHistoViaLinearInterpolation(TH2D* h, Double_t refineFactorX = 6.0, Double_t refineFactorY = 6.0);
     304             : 
     305             :   //TRD
     306             :   void SetTRDPidResponseMaster();
     307             :   void InitializeTRDResponse();
     308             :   void SetTRDSlices(UInt_t TRDslicesForPID[2],AliTRDPIDResponse::ETRDPIDMethod method) const;
     309             :   void SetTRDdEdxParams();
     310             :   void SetTRDEtaMaps();
     311             : 
     312             :   //TOF
     313             :   void SetTOFPidResponseMaster();
     314             :   void InitializeTOFResponse();
     315             : 
     316             :   //HMPID
     317             :   void SetHMPIDPidResponseMaster();
     318             :   void InitializeHMPIDResponse();
     319             : 
     320             :   //EMCAL
     321             :   void SetEMCALPidResponseMaster();
     322             :   void InitializeEMCALResponse();
     323             : 
     324             :   //
     325             :   void SetRecoInfo();
     326             : 
     327             :   //-------------------------------------------------
     328             :   //unbuffered PID calculation
     329             :   //
     330             : 
     331             :   // Number of sigmas
     332             :   Float_t GetNumberOfSigmas(EDetector detCode, const AliVParticle *track, AliPID::EParticleType type) const;
     333             :   Float_t GetNumberOfSigmasITS  (const AliVParticle *track, AliPID::EParticleType type) const;
     334             :   Float_t GetNumberOfSigmasTPC  (const AliVParticle *track, AliPID::EParticleType type) const;
     335             :   Float_t GetNumberOfSigmasTRD  (const AliVParticle *track, AliPID::EParticleType type) const;
     336             :   Float_t GetNumberOfSigmasTOF  (const AliVParticle *track, AliPID::EParticleType type) const;
     337             :   Float_t GetNumberOfSigmasHMPID(const AliVParticle *track, AliPID::EParticleType type) const;
     338             :   Float_t GetNumberOfSigmasEMCAL(const AliVParticle *track, AliPID::EParticleType type, Double_t &eop, Double_t showershape[4]) const;
     339             :   Float_t GetNumberOfSigmasEMCAL(const AliVParticle *track, AliPID::EParticleType type) const;
     340             : 
     341             :   Float_t GetBufferedNumberOfSigmas(EDetector detCode, const AliVParticle *track, AliPID::EParticleType type) const;
     342             : 
     343             :   // Signal deltas
     344             :   EDetPidStatus GetSignalDeltaITS(const AliVParticle *track, AliPID::EParticleType type, Double_t &val, Bool_t ratio=kFALSE) const;
     345             :   EDetPidStatus GetSignalDeltaTPC(const AliVParticle *track, AliPID::EParticleType type, Double_t &val, Bool_t ratio=kFALSE) const;
     346             :   EDetPidStatus GetSignalDeltaTRD(const AliVParticle *track, AliPID::EParticleType type, Double_t &val, Bool_t ratio=kFALSE) const;
     347             :   EDetPidStatus GetSignalDeltaTOF(const AliVParticle *track, AliPID::EParticleType type, Double_t &val, Bool_t ratio=kFALSE) const;
     348             :   EDetPidStatus GetSignalDeltaHMPID(const AliVParticle *vtrack, AliPID::EParticleType type, Double_t &val, Bool_t ratio=kFALSE) const;
     349             : 
     350             :   // Probabilities
     351             :   EDetPidStatus GetComputePIDProbability  (EDetector detCode,  const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     352             :   EDetPidStatus GetComputeITSProbability  (const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     353             :   EDetPidStatus GetComputeTPCProbability  (const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     354             :   EDetPidStatus GetComputeTOFProbability  (const AliVTrack *track, Int_t nSpecies, Double_t p[],Bool_t kNoMism=kFALSE) const;
     355             :   EDetPidStatus GetComputeEMCALProbability(const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     356             :   EDetPidStatus GetComputePHOSProbability (const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     357             :   EDetPidStatus GetComputeHMPIDProbability(const AliVTrack *track, Int_t nSpecies, Double_t p[]) const;
     358             : 
     359             :   // pid status
     360             :   EDetPidStatus GetPIDStatus(EDetector det, const AliVTrack *track) const;
     361             :   EDetPidStatus GetITSPIDStatus(const AliVTrack *track) const;
     362             :   EDetPidStatus GetTPCPIDStatus(const AliVTrack *track) const;
     363             :   EDetPidStatus GetTRDPIDStatus(const AliVTrack *track) const;
     364             :   EDetPidStatus GetHMPIDPIDStatus(const AliVTrack *track) const;
     365             :   EDetPidStatus GetPHOSPIDStatus(const AliVTrack *track) const;
     366             :   EDetPidStatus GetEMCALPIDStatus(const AliVTrack *track) const;
     367             : 
     368         176 :   ClassDef(AliPIDResponse, 16);  //PID response handling
     369             : };
     370             : 
     371             : #endif

Generated by: LCOV version 1.11