1 #ifndef ALITRDPIDCHECKER_H
2 #define ALITRDPIDCHECKER_H
4 //////////////////////////////////////////////////////
6 // Task to check PID performance of the TRD
8 // Author : Alex Wilk <wilka@uni-muenster.de>
10 ///////////////////////////////////////////////////////
13 #include "../Cal/AliTRDCalPID.h"
15 #ifndef ALITRDRECOTASK_H
16 #include "AliTRDrecoTask.h"
22 class TTreeSRedirector;
23 class AliTRDReconstructor;
24 class AliTRDpidChecker : public AliTRDrecoTask
28 kLQlikelihood = 0 // place for 2-dim LQ electron likelihood distributions
29 ,kNNlikelihood = 1 * AliTRDCalPID::kNMom * AliPID::kSPECIES // place for NN electron likelihood distributions
30 ,kdEdx = 2 * AliTRDCalPID::kNMom * AliPID::kSPECIES // place for the dE/dx spectra
31 ,kPH = 3 * AliTRDCalPID::kNMom * AliPID::kSPECIES // place for pulse height spectra
32 ,kMomentum = 4 * AliTRDCalPID::kNMom * AliPID::kSPECIES // place for the momentum distribution
33 ,kMomentumBin = kMomentum +1 // place for the momentum distribution
34 ,kGraphLQ = kMomentumBin +1 // place for the 2-dim LQ pion efficiencies
35 ,kGraphLQerr = kGraphLQ +1 // place for the 2-dim LQ pion efficiency errors
36 ,kGraphNN = kGraphLQerr +1 // place for the NN pion efficiencies
37 ,kGraphNNerr = kGraphNN +1 // place for the NN pion efficiency errors
41 kGraphStart = kGraphLQ
46 virtual ~AliTRDpidChecker();
48 void CreateOutputObjects();
49 void Exec(Option_t *option);
51 void Terminate(Option_t *);
54 AliTRDpidChecker(const AliTRDpidChecker&); // not implemented
55 AliTRDpidChecker& operator=(const AliTRDpidChecker&); // not implemented
57 Double_t GetPionEfficiency(Int_t Index1, Int_t Index2); // calculates the pion efficiency
58 Double_t GetError(Int_t Index1, Int_t Index2); // calculates the error
61 AliTRDReconstructor *fReconstructor; //! reconstructor needed for recalculation the PID
64 kBins = 12001 // binning of the likelihood histograms
67 ClassDef(AliTRDpidChecker, 1); // TRD PID checker