]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGGA/EMCALTasks/AliEmcalIsolatedPhotonsTask.h
fix
[u/mrichter/AliRoot.git] / PWGGA / EMCALTasks / AliEmcalIsolatedPhotonsTask.h
1 #ifndef ALIEMCALISOLATEDPHOTONSTASK_H
2 #define ALIEMCALISOLATEDPHOTONSTASK_H
3
4 // $Id: AliEmcalIsolatedPhotonsTask.h $
5
6 class TClonesArray;
7 class TString;
8 class AliVTrack;
9 class AliVCluster;
10 class TList;
11 class TH1F;
12 class TH2F;
13 class AliEmcalJet;
14
15 #include "AliAnalysisTaskSE.h"
16
17 class AliEmcalIsolatedPhotonsTask : public AliAnalysisTaskSE {
18  public:
19   AliEmcalIsolatedPhotonsTask();
20   AliEmcalIsolatedPhotonsTask(const char *name);
21   virtual ~AliEmcalIsolatedPhotonsTask();
22
23   void                        UserCreateOutputObjects();
24   void                        UserExec(Option_t *option);
25   void                        Terminate(Option_t *option);
26
27   void                        SetClusName(const char *n)                    { fCaloName      = n          ; }
28   void                        SetJetsName(const char *n)                    { fJetsName      = n          ; }
29   void                        SetTracksName(const char *n)                  { fTracksName    = n          ; }
30   void                        SetTrgClusName(const char *n)                 { fTrgClusName   = n          ; }
31
32  protected:
33
34   AliVTrack                  *GetTrack(const Int_t i)          const;
35   Int_t                       GetNumberOfTracks()              const;
36   AliVCluster                *GetCaloCluster(const Int_t i)    const;
37   Int_t                       GetNumberOfCaloClusters()        const;
38   AliEmcalJet                *GetJet(const Int_t i)            const;
39   Int_t                       GetNumberOfJets()                const;
40   AliVCluster                *GetTrgCluster(const Int_t i)     const;
41   Int_t                       GetNumberOfTrgClusters()         const;
42   void                        FillHistograms()                      ;
43   void                        RetrieveEventObjects()                ;
44   Bool_t                      AcceptTrack(AliVTrack* /*track*/)     ;
45
46   TList                      *fOutput;                 // Output list
47
48   TString                     fTracksName;             // name of track collection
49   TString                     fCaloName;               // name of calo cluster collection
50   TString                     fJetsName;               // name of jet collection
51   TString                     fTrgClusName;            // name of trg clus name
52   TClonesArray               *fTracks;                 //!Tracks
53   TClonesArray               *fCaloClusters;           //!Clusters
54   TClonesArray               *fJets;                   //!Jets
55   TClonesArray               *fTrgClusters;            //!Trg Clusters
56   AliCentrality              *fCent;                   // Event centrality
57   TH1F                       *fHistCentrality;         // Event centrality distribution
58   TH1F                       *fHistJetsE[4];           // Jet energy spectrum
59   TH1F                       *fHistJetsNE[4];          // Jet neutral energy spectrum
60   TH1F                       *fHistJetsNEF[4];         // Jet neutral energy fraction
61   TH1F                       *fHistJetsZ[4];           // Constituent Pt over Jet E ratio
62   TH1F                       *fHistLeadingJetE[4];     // Leading jet energy spectrum
63   TH1F                       *fHistTracksPtLJ[4];      // Pt spectrum of tracks
64   TH1F                       *fHistClusELJ[4];         // Energy spectrum of clusters
65   TH1F                       *fHistTracksPtBkg[4];     // Pt spectrum of tracks
66   TH1F                       *fHistClusEBkg[4];        // Energy spectrum of clusters
67   Int_t                       Ptbins;                  // No. of pt bins
68   Float_t                     Ptlow;                   // Min pt
69   Float_t                     Ptup;                    // Max pt
70   Int_t                       Ebins;                   // No. of e bins
71   Float_t                     Elow;                    // Min e
72   Float_t                     Eup;                     // Max e
73
74  private:
75   AliEmcalIsolatedPhotonsTask(const AliEmcalIsolatedPhotonsTask&);            // not implemented
76   AliEmcalIsolatedPhotonsTask &operator=(const AliEmcalIsolatedPhotonsTask&); // not implemented
77
78   ClassDef(AliEmcalIsolatedPhotonsTask, 1) // Isolated photons task
79 };
80 #endif