]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG3/hfe/AliHFEpidTRD.h
DA for calibrating energy by pi0 and MIP and related classes (Hisayuki Torii).
[u/mrichter/AliRoot.git] / PWG3 / hfe / AliHFEpidTRD.h
CommitLineData
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 22class AliAODTrack;
23class AliAODMCParticle;
75d81601 24class AliESDtrack;
722347d8 25class AliMCParticle;
809a4336 26class AliVParticle;
75d81601 27class TList;
28class TH2F;
809a4336 29
30class 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