]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG/EMCAL/AliEmcalAodTrackFilterTask.h
Merge branch 'master' into TPCdev
[u/mrichter/AliRoot.git] / PWG / EMCAL / AliEmcalAodTrackFilterTask.h
CommitLineData
fe75ca27
CL
1#ifndef ALIEMCALAODTRACKFILTERTASK_H
2#define ALIEMCALAODTRACKFILTERTASK_H
fb99243d
CL
3
4// $Id$
5
6class TClonesArray;
fb99243d
CL
7
8#include "AliAnalysisTaskSE.h"
9
fe75ca27 10class AliEmcalAodTrackFilterTask : public AliAnalysisTaskSE {
fb99243d 11 public:
fe75ca27
CL
12 AliEmcalAodTrackFilterTask();
13 AliEmcalAodTrackFilterTask(const char *name);
14 virtual ~AliEmcalAodTrackFilterTask();
fb99243d 15
33a8056d 16 void SetAODfilterBits(Int_t b0 = 0, Int_t b1 = 0) { fAODfilterBits[0] = b0 ; fAODfilterBits[1] = b1 ; }
507ffd10 17 void SetAttemptProp(Bool_t b) { fAttemptProp = b ; }
18 void SetAttemptPropMatch(Bool_t b) { fAttemptPropMatch = b ; }
33a8056d 19 void SetCutMaxFractionSharedTPCClusters(Double_t c = 0.4) { fCutMaxFrShTPCClus = c ; }
20 void SetDist(Double_t d) { fDist = d ; }
21 void SetDoPropagation(Bool_t b) { fDoPropagation = b ; }
22 void SetIncludeNoITS(Bool_t f) { fIncludeNoITS = f ; }
507ffd10 23 void SetMC(Bool_t b) { fIsMC = b ; }
33a8056d 24 void SetTracksInName(const char *name) { fTracksInName = name; }
25 void SetTracksOutName(const char *name) { fTracksOutName = name; }
507ffd10 26 void SetUseNegativeLabels(Bool_t f) { fUseNegativeLabels = f ; }
d47bb504 27 void SetTrackEfficiency(Double_t eff = 0.95) { fTrackEfficiency = eff ; }
fb99243d
CL
28
29 protected:
33a8056d 30 void UserCreateOutputObjects();
31 void UserExec(Option_t *option);
32
fb99243d
CL
33 Int_t fAODfilterBits[2]; // AOD track filter bit map
34 TString fTracksOutName; // name of output track array
35 TString fTracksInName; // name of input track array
fb99243d 36 Bool_t fIncludeNoITS; // includes tracks with failed ITS refit
33a8056d 37 Double_t fCutMaxFrShTPCClus; // max fraction of shared TPC clusters
fb99243d
CL
38 Bool_t fUseNegativeLabels; // whether or not should use negative MC labels
39 Bool_t fIsMC; // whether it is a MC event or not
fe75ca27 40 Bool_t fDoPropagation; // if true then propagate all hybrid tracks to EMCal surface
507ffd10 41 Bool_t fAttemptProp; // if true then attempt to propagate if not done yet
42 Bool_t fAttemptPropMatch; // if true then attempt to propagate if not done yet but IsEMCAL is true
fe75ca27 43 Double_t fDist; // distance to surface (440cm default)
d47bb504 44 Double_t fTrackEfficiency; // track efficiency
fb99243d
CL
45 TClonesArray *fTracksIn; //!track array in
46 TClonesArray *fTracksOut; //!track array out
47
48 private:
fe75ca27
CL
49 AliEmcalAodTrackFilterTask(const AliEmcalAodTrackFilterTask&); // not implemented
50 AliEmcalAodTrackFilterTask &operator=(const AliEmcalAodTrackFilterTask&); // not implemented
fb99243d 51
d47bb504 52 ClassDef(AliEmcalAodTrackFilterTask, 3); // Task to filter Aod tracks
fb99243d
CL
53};
54#endif