]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG/EMCAL/AliEmcalEsdTrackFilterTask.h
add track efficiency dicing to Esd/Aod Filter, rename matching prep macro + adjust
[u/mrichter/AliRoot.git] / PWG / EMCAL / AliEmcalEsdTrackFilterTask.h
1 #ifndef ALIEMCALESDTRACKFILTERTASK_H
2 #define ALIEMCALESDTRACKFILTERTASK_H
3
4 // $Id$
5
6 class TClonesArray;
7 class AliESDEvent;
8 class AliESDtrackCuts;
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   = eff; }
27
28  protected:
29   void UserCreateOutputObjects();
30   void UserExec(Option_t *option);
31
32   AliESDtrackCuts   *fEsdTrackCuts;      // esd track cuts
33   Bool_t             fDoSpdVtxCon;       // if true then do vertex constraint
34   AliESDtrackCuts   *fHybridTrackCuts;   // hybrid track cuts
35   TString            fTracksName;        // name of tracks 
36   Bool_t             fIncludeNoITS;      // includes tracks with failed ITS refit
37   Bool_t             fDoPropagation;     // propagate all hybrid tracks to EMCal surface
38   Double_t           fDist;              // distance to surface (440cm default)
39   Double_t           fTrackEfficiency;   // track efficiency
40   AliESDEvent       *fEsdEv;             //!esd event
41   TClonesArray      *fTracks;            //!track array
42
43  private:
44   AliEmcalEsdTrackFilterTask(const AliEmcalEsdTrackFilterTask&);            // not implemented
45   AliEmcalEsdTrackFilterTask &operator=(const AliEmcalEsdTrackFilterTask&); // not implemented
46
47   ClassDef(AliEmcalEsdTrackFilterTask, 2); // Class to constrain TPC tracks to SPD vertex
48 };
49
50 #endif