first supposedly working version
[u/mrichter/AliRoot.git] / PWGGA / EMCALTasks / AliEsdJetTask.h
1 #ifndef ALIESDJETTASK_H
2 #define ALIESDJETTASK_H
3
4 // $Id$
5
6 class TClonesArray;
7 class AliESDtrackCuts;
8
9 #include "AliAnalysisTaskSE.h"
10
11 class AliEsdJetTask : public AliAnalysisTaskSE {
12  public:
13   AliEsdJetTask(const char *name=0);
14   virtual ~AliEsdJetTask();
15
16   void         UserCreateOutputObjects();
17   void         UserExec(Option_t *option);
18   void         Terminate(Option_t *option);
19
20   void         SetAlgo(Int_t a)                      { fAlgo       = a; }
21   void         SetCaloName(const char *n)            { fCaloName   = n; }
22   void         SetHadCorr(Double_t c)                { fHadCorr    = c; }
23   void         SetJetsName(const char *n)            { fJetsName   = n; }
24   void         SetTracksName(const char *n)          { fTracksName = n; }
25   void         SetRadius(Double_t r)                 { fRadius     = r; }
26   void         SetType(Int_t t)                      { fType       = t; }
27
28  protected:
29   void FindJets(TObjArray *tracks, TObjArray *clus, Int_t algo, Double_t radius);
30
31   TString                fTracksName;             // name of track collection (if "" use branch)
32   TString                fCaloName;               // name of calo collection
33   TString                fJetsName;               // name of jet collection
34   Int_t                  fAlgo;                   // algo (0==kt, 1==antikt)
35   Double_t               fRadius;                 // jet radius
36   Int_t                  fType;                   // jet type (0=all, 1=ch, 2=neutral)
37   Double_t               fHadCorr;                // hadronic correction
38   TClonesArray          *fJets;                   //!jet collection
39
40  private:
41   AliEsdJetTask(const AliEsdJetTask&);            // not implemented
42   AliEsdJetTask &operator=(const AliEsdJetTask&); // not implemented
43
44   ClassDef(AliEsdJetTask, 1) // Jet producing task
45 };
46 #endif