]>
Commit | Line | Data |
---|---|---|
96b85d73 | 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> | |
d7bdc804 | 10 | #include <TF1.h> |
96b85d73 | 11 | #include "AliAnalysisTaskSE.h" |
d7bdc804 | 12 | #include "AliESDtrack.h" |
13 | #include "AliAODTrack.h" | |
14 | #include "AliAODPid.h" | |
96b85d73 | 15 | class AliAnalysisFilter; |
7b4cee8d | 16 | class AliRunTag; |
17 | class AliAODTagCreator; | |
18 | ||
96b85d73 | 19 | |
20 | class AliAnalysisTaskESDfilter : public AliAnalysisTaskSE | |
21 | { | |
22 | public: | |
23 | AliAnalysisTaskESDfilter(); | |
7b4cee8d | 24 | AliAnalysisTaskESDfilter(const char* name, Bool_t tags = kFALSE); |
96b85d73 | 25 | virtual ~AliAnalysisTaskESDfilter() {;} |
26 | // Implementation of interface methods | |
7b4cee8d | 27 | virtual void UserCreateOutputObjects(); |
28 | virtual void Init(); | |
29 | virtual void LocalInit() {Init();} | |
30 | virtual void UserExec(Option_t *option); | |
31 | virtual Bool_t Notify(); | |
32 | virtual void Terminate(Option_t *option); | |
33 | virtual void FinishTaskOutput(); | |
96b85d73 | 34 | |
35 | virtual void ConvertESDtoAOD(); | |
7b4cee8d | 36 | virtual void CreateTags(); |
37 | virtual void SetCreateTags() {fCreateTags = kTRUE;} | |
96b85d73 | 38 | // Setters |
39 | virtual void SetTrackFilter(AliAnalysisFilter* trackF) {fTrackFilter = trackF;} | |
40 | virtual void SetKinkFilter (AliAnalysisFilter* KinkF) {fKinkFilter = KinkF;} | |
41 | virtual void SetV0Filter (AliAnalysisFilter* V0F) {fV0Filter = V0F;} | |
7b4cee8d | 42 | virtual void SetPthreshold (Double_t p) {fHighPthreshold = p;} |
43 | virtual void SetPshape (TF1 *func) {fPtshape = func;} | |
d7bdc804 | 44 | |
45 | virtual void SetAODPID(AliESDtrack *esdtrack, AliAODTrack *aodtrack, AliAODPid *detpid, Double_t timezero); | |
373fc041 | 46 | void SetDetectorRawSignals(AliAODPid *aodpid, AliESDtrack *track, Double_t timezero); |
96b85d73 | 47 | |
48 | private: | |
49 | AliAnalysisTaskESDfilter(const AliAnalysisTaskESDfilter&); | |
50 | AliAnalysisTaskESDfilter& operator=(const AliAnalysisTaskESDfilter&); | |
7b4cee8d | 51 | // Filtering |
96b85d73 | 52 | AliAnalysisFilter* fTrackFilter; // Track Filter |
53 | AliAnalysisFilter* fKinkFilter; // Kink Filter | |
7b4cee8d | 54 | AliAnalysisFilter* fV0Filter; // V0 Filter |
55 | // PID | |
d7bdc804 | 56 | Double_t fHighPthreshold; // Pt threshold for detector signal setting |
57 | TF1 * fPtshape; // Pt spectrum distribution | |
7b4cee8d | 58 | // Tags |
59 | Bool_t fCreateTags; // Flag for tag creation | |
60 | Bool_t fFirstFile; //! To flag the first file | |
61 | AliRunTag *fRunTag; //! Pointer to run tag | |
62 | TTree *fTreeT; //! tree for aod tags | |
63 | AliAODTagCreator *fTagCreator; //! The tag creator | |
64 | ||
96b85d73 | 65 | ClassDef(AliAnalysisTaskESDfilter, 1); // Analysis task for standard ESD filtering |
66 | }; | |
67 | ||
68 | #endif |