]>
Commit | Line | Data |
---|---|---|
1 | #ifndef ALIANALYSISTASKESDFILTER_H | |
2 | #define ALIANALYSISTASKESDFILTER_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | /* $Id: AliAnalysisTaskESDfilter.h 24429 2008-03-12 10:27:50Z jgrosseo $ */ | |
8 | ||
9 | #include <TList.h> | |
10 | #include <TF1.h> | |
11 | #include "AliAnalysisTaskSE.h" | |
12 | #include "AliESDtrack.h" | |
13 | #include "AliAODTrack.h" | |
14 | #include "AliAODPid.h" | |
15 | class AliAnalysisFilter; | |
16 | class AliStack; | |
17 | class AliESDtrack; | |
18 | ||
19 | class AliAnalysisTaskESDfilter : public AliAnalysisTaskSE | |
20 | { | |
21 | public: | |
22 | AliAnalysisTaskESDfilter(); | |
23 | AliAnalysisTaskESDfilter(const char* name); | |
24 | virtual ~AliAnalysisTaskESDfilter() {;} | |
25 | // Implementation of interface methods | |
26 | virtual void UserCreateOutputObjects(); | |
27 | virtual void Init(); | |
28 | virtual void LocalInit() {Init();} | |
29 | virtual void UserExec(Option_t *option); | |
30 | virtual void Terminate(Option_t *option); | |
31 | ||
32 | virtual void ConvertESDtoAOD(); | |
33 | // Setters | |
34 | virtual void SetTrackFilter (AliAnalysisFilter* trackF) {fTrackFilter = trackF;} | |
35 | virtual void SetKinkFilter (AliAnalysisFilter* KinkF) {fKinkFilter = KinkF;} | |
36 | virtual void SetV0Filter (AliAnalysisFilter* V0F) {fV0Filter = V0F;} | |
37 | virtual void SetCascadeFilter (AliAnalysisFilter* CascadeF) {fCascadeFilter = CascadeF;} | |
38 | virtual void SetPthreshold (Double_t p) {fHighPthreshold = p;} | |
39 | virtual void SetPshape (TF1 *func) {fPtshape = func;} | |
40 | virtual void SetEnableFillAOD (Bool_t b) {fEnableFillAOD = b;} | |
41 | ||
42 | virtual void SetAODPID(AliESDtrack *esdtrack, AliAODTrack *aodtrack, AliAODPid *detpid, Double_t timezero, Double_t bfield); | |
43 | void SetDetectorRawSignals(AliAODPid *aodpid, AliESDtrack *track, Double_t timezero, Double_t bfield); | |
44 | ||
45 | private: | |
46 | AliAnalysisTaskESDfilter(const AliAnalysisTaskESDfilter&); | |
47 | AliAnalysisTaskESDfilter& operator=(const AliAnalysisTaskESDfilter&); | |
48 | void PrintMCInfo(AliStack *pStack,Int_t label); // for debugging | |
49 | Double_t Chi2perNDF(AliESDtrack* track); | |
50 | ||
51 | // Filtering | |
52 | AliAnalysisFilter* fTrackFilter; // Track Filter | |
53 | AliAnalysisFilter* fKinkFilter; // Kink Filter | |
54 | AliAnalysisFilter* fV0Filter; // V0 Filter | |
55 | AliAnalysisFilter* fCascadeFilter; // Cascade Filter | |
56 | // PID | |
57 | Double_t fHighPthreshold; // Pt threshold for detector signal setting | |
58 | TF1 * fPtshape; // Pt spectrum distribution | |
59 | Bool_t fEnableFillAOD; // value that decides if this task activates AOD filling | |
60 | ||
61 | ClassDef(AliAnalysisTaskESDfilter, 4); // Analysis task for standard ESD filtering | |
62 | }; | |
63 | ||
64 | #endif |