]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGGA/EMCALJetTasks/AliJetResponseMaker.h
cleanup
[u/mrichter/AliRoot.git] / PWGGA / EMCALJetTasks / AliJetResponseMaker.h
1 #ifndef ALIJETRESPONSEMAKER_H
2 #define ALIJETRESPONSEMAKER_H
3
4 // $Id$
5
6 class TClonesArray;
7 class TH1F;
8 class TH2F;
9
10 #include "AliAnalysisTaskEmcalJet.h"
11
12 class AliJetResponseMaker : public AliAnalysisTaskEmcalJet {
13  public:
14   AliJetResponseMaker();
15   AliJetResponseMaker(const char *name);
16   virtual ~AliJetResponseMaker();
17
18   void                        UserCreateOutputObjects();
19   void                        Terminate(Option_t *option);
20
21   void                        SetMCJetsName(const char *n)       { fMCJetsName    = n; }
22   void                        SetMCTracksName(const char *n)     { fMCTracksName  = n; }
23   void                        SetMaxDistance(Double_t d)         { fMaxDistance   = d; }
24
25  protected:
26   void                        DoJetLoop(TClonesArray *jets1, TClonesArray *jets2, Bool_t mc);
27   Bool_t                      FillHistograms();
28   Bool_t                      RetrieveEventObjects();
29
30   TString                     fMCTracksName;              // name of MC particle collection
31   TString                     fMCJetsName;                // name of MC jet collection
32   Double_t                    fMaxDistance;               // maximum distance between matched particle and detector level jets
33   TClonesArray               *fMCTracks;                  //!MC particles
34   TClonesArray               *fMCJets;                    //!MC jets
35   // Particle level jets
36   TH2F                       *fHistMCJetPhiEta;           //!phi-eta distribution of jets
37   TH1F                       *fHistMCJetsPt;              //!inclusive jet pt spectrum
38   TH2F                       *fHistMCJetsNEFvsPt;         //!jet neutral energy fraction vs. jet pt
39   TH2F                       *fHistMCJetsZvsPt;           //!constituent Pt over Jet Pt ratio vs. jet pt
40   // Detector level jets
41   TH2F                       *fHistJetPhiEta;             //!phi-eta distribution of jets
42   TH1F                       *fHistJetsPt;                //!inclusive jet pt spectrum
43   TH2F                       *fHistJetsNEFvsPt;           //!jet neutral energy fraction vs. jet pt
44   TH2F                       *fHistJetsZvsPt;             //!constituent Pt over Jet Pt ratio vs. jet pt
45   // Detector-particle level matching
46   TH1F                       *fHistClosestDistance;       //!distance between closest particle to detector level jet
47   TH1F                       *fHistClosestDeltaPhi;       //!delta phi between closest particle to detector level jet
48   TH1F                       *fHistClosestDeltaEta;       //!delta eta between closest particle to detector level jet
49   TH1F                       *fHistClosestDeltaPt;        //!delta pt between closest particle to detector level jet
50   TH1F                       *fHistNonMatchedMCJetPt;     //!non-matched mc jet pt distribution
51   TH1F                       *fHistNonMatchedJetPt;       //!non-matched jet pt distribution
52   TH2F                       *fHistPartvsDetecPt;         //!particle vs detector level jet pt
53   TH1F                       *fHistMissedMCJets;          //!mc jets not measured
54
55  private:
56   AliJetResponseMaker(const AliJetResponseMaker&);            // not implemented
57   AliJetResponseMaker &operator=(const AliJetResponseMaker&); // not implemented
58
59   ClassDef(AliJetResponseMaker, 4) // Jet response matrix producing task
60 };
61 #endif