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