macro dir
[u/mrichter/AliRoot.git] / PWG / EMCAL / AliEmcalEsdTpcTrackTask.h
1 #ifndef ALIEMCALESDTPCTRACKTASK_H
2 #define ALIEMCALESDTPCTRACKTASK_H
3
4 // $Id$
5
6 class TClonesArray;
7 class AliESDEvent;
8 class AliESDtrack;
9 class AliESDtrackCuts;
10
11 #include "AliAnalysisTaskSE.h"
12
13 class AliEmcalEsdTpcTrackTask : public AliAnalysisTaskSE {
14  public:
15   AliEmcalEsdTpcTrackTask();
16   AliEmcalEsdTpcTrackTask(const char *name);
17   virtual ~AliEmcalEsdTpcTrackTask();
18
19   void UserCreateOutputObjects();
20   void UserExec(Option_t *option);
21    
22   void SetDoSpdVtxConstrain(Bool_t b)            { fDoSpdVtxCon      = b;    }
23   void SetHybridTrackCuts(AliESDtrackCuts *cuts) { fHybridTrackCuts  = cuts; }
24   void SetTrackCuts(AliESDtrackCuts *cuts)       { fEsdTrackCuts     = cuts; }
25   void SetTracksName(const char *name)           { fTracksName       = name; }
26
27  protected:
28   AliESDtrackCuts   *fEsdTrackCuts;      // esd track cuts
29   Bool_t             fDoSpdVtxCon;       // if true then do vertex constraint
30   AliESDtrackCuts   *fHybridTrackCuts;   // hybrid track cuts
31   TString            fTracksName;        // name of tracks 
32   AliESDEvent       *fEsdEv;             //!esd event
33   TClonesArray      *fTracks;            //!track array
34
35  private:
36   AliEmcalEsdTpcTrackTask(const AliEmcalEsdTpcTrackTask&);            // not implemented
37   AliEmcalEsdTpcTrackTask &operator=(const AliEmcalEsdTpcTrackTask&); // not implemented
38
39   ClassDef(AliEmcalEsdTpcTrackTask, 1); // Class to constrain TPC tracks to SPD vertex
40 };
41
42 #endif