]>
Commit | Line | Data |
---|---|---|
809a4336 | 1 | /************************************************************************** |
2 | * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
3 | * * | |
4 | * Author: The ALICE Off-line Project. * | |
5 | * Contributors are mentioned in the code where appropriate. * | |
6 | * * | |
7 | * Permission to use, copy, modify and distribute this software and its * | |
8 | * documentation strictly for non-commercial purposes is hereby granted * | |
9 | * without fee, provided that the above copyright notice appears in all * | |
10 | * copies and that both the copyright notice and this permission notice * | |
11 | * appear in the supporting documentation. The authors make no claims * | |
12 | * about the suitability of this software for any purpose. It is * | |
13 | * provided "as is" without express or implied warranty. * | |
14 | **************************************************************************/ | |
75d81601 | 15 | #ifndef ALIHFEPIDTRD_H |
16 | #define ALIHFEPIDTRD_H | |
809a4336 | 17 | |
75d81601 | 18 | #ifndef ALIHFEPIDBASE_H |
809a4336 | 19 | #include "AliHFEpidBase.h" |
20 | #endif | |
21 | ||
722347d8 | 22 | class AliAODTrack; |
23 | class AliAODMCParticle; | |
75d81601 | 24 | class AliESDtrack; |
722347d8 | 25 | class AliMCParticle; |
809a4336 | 26 | class AliVParticle; |
75d81601 | 27 | class TList; |
28 | class TH2F; | |
809a4336 | 29 | |
30 | class AliHFEpidTRD : public AliHFEpidBase{ | |
31 | public: | |
32 | typedef enum{ | |
33 | kLQ = 0, | |
34 | kNN = 1 | |
35 | } PIDMethodTRD_t; | |
dbe3abbe | 36 | enum{ |
37 | kThreshParams = 24 | |
38 | }; | |
75d81601 | 39 | enum{ |
40 | kHistTRDSigV1 = 0, | |
41 | kHistTRDSigV2 = 1, | |
42 | kHistOverallSpecies = 2 | |
43 | }; | |
809a4336 | 44 | AliHFEpidTRD(const Char_t *name); |
45 | AliHFEpidTRD(const AliHFEpidTRD &ref); | |
46 | AliHFEpidTRD& operator=(const AliHFEpidTRD &ref); | |
47 | virtual ~AliHFEpidTRD(); | |
48 | ||
49 | virtual Bool_t InitializePID(); | |
722347d8 | 50 | virtual Int_t IsSelected(AliHFEpidObject *track); |
75d81601 | 51 | virtual Bool_t HasQAhistos() const { return kTRUE; }; |
52 | ||
722347d8 | 53 | Double_t GetTRDSignalV1(AliESDtrack *track, Int_t mcPID); |
54 | Double_t GetTRDSignalV2(AliESDtrack *track, Int_t mcPID); | |
809a4336 | 55 | |
809a4336 | 56 | void SetPIDMethod(PIDMethodTRD_t method) { fPIDMethod = method; }; |
809a4336 | 57 | protected: |
58 | void Copy(TObject &ref) const; | |
722347d8 | 59 | Int_t MakePIDesd(AliESDtrack *esdTrack, AliMCParticle *mcTrack); |
60 | Int_t MakePIDaod(AliAODTrack *aofTrack, AliAODMCParticle *aodMC); | |
dbe3abbe | 61 | Double_t GetTRDthresholds(Double_t electronEff, Double_t p); |
75d81601 | 62 | Int_t GetMCpid(AliESDtrack *track); |
dbe3abbe | 63 | void InitParameters(); |
75d81601 | 64 | virtual void AddQAhistograms(TList *l); |
dbe3abbe | 65 | void GetParameters(Double_t electronEff, Double_t *parameters); |
75d81601 | 66 | |
67 | void FillHistogramsTRDSignalV1(Double_t signal, Double_t p, Int_t species); | |
68 | void FillHistogramsTRDSignalV2(Double_t signal, Double_t p, Int_t species); | |
809a4336 | 69 | private: |
75d81601 | 70 | static const Double_t fgkVerySmall; // Check for 0 |
809a4336 | 71 | PIDMethodTRD_t fPIDMethod; // PID Method: 2D Likelihood or Neural Network |
dbe3abbe | 72 | Double_t fThreshParams[kThreshParams]; // Threshold parametrisation |
75d81601 | 73 | TList *fContainer; // QA Histogram Container |
809a4336 | 74 | ClassDef(AliHFEpidTRD, 1) // TRD electron ID class |
75 | }; | |
76 | ||
77 | #endif |