]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG/EMCAL/AliEmcalPicoTrackMaker.h
500377b42c88e3854b06bec71049b472788916ec
[u/mrichter/AliRoot.git] / PWG / EMCAL / AliEmcalPicoTrackMaker.h
1 #ifndef ALIEMCALPICOTRACKMAKER_H
2 #define ALIEMCALPICOTRACKMAKER_H
3
4 // $Id$
5
6 class TClonesArray;
7 class AliVEvent;
8 class AliVTrack;
9 class AliESDtrackCuts;
10
11 #include "AliAnalysisTaskSE.h"
12
13 class AliEmcalPicoTrackMaker : public AliAnalysisTaskSE {
14  public:
15   AliEmcalPicoTrackMaker();
16   AliEmcalPicoTrackMaker(const char *name);
17   virtual ~AliEmcalPicoTrackMaker();
18
19   void UserCreateOutputObjects();
20   void UserExec(Option_t *option);
21
22   void SetAODfilterBits(Int_t b0 = 0, Int_t b1 = 0)      { fAODfilterBits[0] = b0  ; fAODfilterBits[1] = b1  ; }
23   void SetESDtrackCuts(AliESDtrackCuts *cuts)            { fESDtrackCuts     = cuts; }
24   void SetTracksInName(const char *name)                 { fTracksInName     = name; }
25   void SetTracksOutName(const char *name)                { fTracksOutName    = name; }
26   void SetTrackPtLimits(Double_t min, Double_t max)      { fMaxTrackPt       = max ; fMinTrackPt       = min ; }
27   void SetTrackEtaLimits(Double_t min, Double_t max)     { fMaxTrackEta      = max ; fMinTrackEta      = min ; }
28   void SetTrackPhiLimits(Double_t min, Double_t max)     { fMaxTrackPhi      = max ; fMinTrackPhi      = min ; }
29   void SetTrackEfficiency(Double_t eff = 0.95)           { fTrackEfficiency = eff  ; }
30   void SetIncludeNoITS(Bool_t f)                         { fIncludeNoITS     = f;    }
31
32  protected:
33   Int_t              fAODfilterBits[2];     // AOD track filter bit map
34   AliESDtrackCuts   *fESDtrackCuts;         // ESD track cuts
35   TString            fTracksOutName;        // name of output track array
36   TString            fTracksInName;         // name of input track array
37   Double_t           fMinTrackPt;           // mix pt of tracks
38   Double_t           fMaxTrackPt;           // max pt of tracks
39   Double_t           fMinTrackEta;          // cut on track eta
40   Double_t           fMaxTrackEta;          // cut on track eta
41   Double_t           fMinTrackPhi;          // cut on track phi
42   Double_t           fMaxTrackPhi;          // cut on track phi
43   Double_t           fTrackEfficiency;      // track efficiency
44   Bool_t             fIncludeNoITS;         // includes tracks with failed ITS refit
45   TClonesArray      *fTracksIn;             //!track array in
46   TClonesArray      *fTracksOut;            //!track array out
47
48  private:
49   AliEmcalPicoTrackMaker(const AliEmcalPicoTrackMaker&);            // not implemented
50   AliEmcalPicoTrackMaker &operator=(const AliEmcalPicoTrackMaker&); // not implemented
51
52   ClassDef(AliEmcalPicoTrackMaker, 4); // Task to make PicoTracks in AOD/ESD events
53 };
54 #endif