]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG/EMCAL/AliEmcalEsdTrackFilterTask.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWG / EMCAL / AliEmcalEsdTrackFilterTask.h
CommitLineData
cdd4e0e2
CL
1#ifndef ALIEMCALESDTRACKFILTERTASK_H
2#define ALIEMCALESDTRACKFILTERTASK_H
cc2b5fb5 3
cc2b5fb5 4class TClonesArray;
5class AliESDEvent;
cc2b5fb5 6class AliESDtrackCuts;
7
da07e905 8#include <TF1.h>
9
cc2b5fb5 10#include "AliAnalysisTaskSE.h"
cdd4e0e2 11#include "AliESDtrackCuts.h"
cc2b5fb5 12
cdd4e0e2 13class 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