]>
Commit | Line | Data |
---|---|---|
cdd4e0e2 CL |
1 | #ifndef ALIEMCALESDTRACKFILTERTASK_H |
2 | #define ALIEMCALESDTRACKFILTERTASK_H | |
cc2b5fb5 | 3 | |
cc2b5fb5 | 4 | class TClonesArray; |
5 | class AliESDEvent; | |
cc2b5fb5 | 6 | class AliESDtrackCuts; |
7 | ||
da07e905 | 8 | #include <TF1.h> |
9 | ||
cc2b5fb5 | 10 | #include "AliAnalysisTaskSE.h" |
cdd4e0e2 | 11 | #include "AliESDtrackCuts.h" |
cc2b5fb5 | 12 | |
cdd4e0e2 | 13 | class AliEmcalEsdTrackFilterTask : public AliAnalysisTaskSE { |
cc2b5fb5 | 14 | public: |
cdd4e0e2 CL |
15 | AliEmcalEsdTrackFilterTask(); |
16 | AliEmcalEsdTrackFilterTask(const char *name); | |
17 | virtual ~AliEmcalEsdTrackFilterTask(); | |
cc2b5fb5 | 18 | |
cdd4e0e2 CL |
19 | void SetDist(Double_t d) { fDist = d; } |
20 | void SetDoPropagation(Bool_t b) { fDoPropagation = b; } | |
4d1e3842 | 21 | void SetDoSpdVtxConstrain(Bool_t b) { fDoSpdVtxCon = b; } |
57184cc6 | 22 | void SetHybridTrackCuts(AliESDtrackCuts *cuts) { fHybridTrackCuts = cuts; } |
cdd4e0e2 | 23 | void SetIncludeNoITS(Bool_t f) { fIncludeNoITS = f; } |
4d1e3842 | 24 | void SetTrackCuts(AliESDtrackCuts *cuts) { fEsdTrackCuts = cuts; } |
57184cc6 | 25 | void SetTracksName(const char *name) { fTracksName = name; } |
da07e905 | 26 | void SetTrackEfficiency(Double_t eff = 0.95) { fTrackEfficiency = new TF1("eff", "[0]", 0, 500); fTrackEfficiency->FixParameter(0,eff); } |
27 | void SetTrackEfficiency(TF1* eff) { fTrackEfficiency = eff; } | |
28 | void SetMC(Bool_t b) { fIsMC = b ; } | |
35fb503f | 29 | |
cc2b5fb5 | 30 | protected: |
33a8056d | 31 | void UserCreateOutputObjects(); |
32 | void UserExec(Option_t *option); | |
33 | ||
cc2b5fb5 | 34 | AliESDtrackCuts *fEsdTrackCuts; // esd track cuts |
4d1e3842 | 35 | Bool_t fDoSpdVtxCon; // if true then do vertex constraint |
57184cc6 | 36 | AliESDtrackCuts *fHybridTrackCuts; // hybrid track cuts |
cc2b5fb5 | 37 | TString fTracksName; // name of tracks |
6231f841 | 38 | Bool_t fIncludeNoITS; // includes tracks with failed ITS refit |
35fb503f | 39 | Bool_t fDoPropagation; // propagate all hybrid tracks to EMCal surface |
fe75ca27 | 40 | Double_t fDist; // distance to surface (440cm default) |
da07e905 | 41 | TF1 *fTrackEfficiency; // track efficiency |
1737c13e | 42 | Bool_t fIsMC; // whether it is a MC event or not |
cc2b5fb5 | 43 | AliESDEvent *fEsdEv; //!esd event |
44 | TClonesArray *fTracks; //!track array | |
45 | ||
46 | private: | |
cdd4e0e2 CL |
47 | AliEmcalEsdTrackFilterTask(const AliEmcalEsdTrackFilterTask&); // not implemented |
48 | AliEmcalEsdTrackFilterTask &operator=(const AliEmcalEsdTrackFilterTask&); // not implemented | |
cc2b5fb5 | 49 | |
da07e905 | 50 | ClassDef(AliEmcalEsdTrackFilterTask, 4); // Class to constrain TPC tracks to SPD vertex |
cc2b5fb5 | 51 | }; |
52 | ||
53 | #endif |