]>
Commit | Line | Data |
---|---|---|
332f1f44 | 1 | #ifndef AliAnalysisTaskGammaJet_cxx\r |
2 | #define AliAnalysisTaskGammaJet_cxx\r | |
3 | \r | |
4 | // example of an analysis task creating a p_t spectrum\r | |
5 | // Authors: Panos Cristakoglou, Jan Fiete Grosse-Oetringhaus, Christian Klein-Boesing\r | |
6 | \r | |
7 | class TH1F;\r | |
8 | class AliESDEvent;\r | |
fae5f6bb | 9 | class AliGammaConversionAODObject;\r |
10 | class AliAODPWG4ParticleCorrelation;\r | |
11 | class TClonesArray;\r | |
12 | class TString;\r | |
332f1f44 | 13 | \r |
14 | #include "AliAnalysisTaskSE.h"\r | |
15 | \r | |
16 | class AliAnalysisTaskGammaJet : public AliAnalysisTaskSE {\r | |
17 | public:\r | |
4dca60a8 | 18 | AliAnalysisTaskGammaJet(); \r |
332f1f44 | 19 | AliAnalysisTaskGammaJet(const char *name);\r |
20 | virtual ~AliAnalysisTaskGammaJet() {}\r | |
21 | \r | |
22 | virtual void UserCreateOutputObjects();\r | |
23 | virtual void UserExec(Option_t *option);\r | |
24 | virtual void Terminate(Option_t *);\r | |
25 | \r | |
26 | void SetDeltaAODFileName(TString string) { fDeltaAODFileName = string;}\r | |
fae5f6bb | 27 | //Move all of these somewhere\r |
28 | inline Float_t GetMinPt() const { return fMinPt;} \r | |
29 | void SetMinPt( const Float_t pt ) { fMinPt = pt; }\r | |
30 | inline Float_t GetConeSize () const { return fConeSize; }\r | |
31 | void SetConeSize ( const Float_t cs ) { fConeSize = cs; }\r | |
32 | inline Float_t GetPtThreshold () const { return fPtThreshold; }\r | |
33 | void SetPtThreshold ( Float_t ptt ) { fPtThreshold = ptt; }\r | |
34 | \r | |
35 | \r | |
36 | \r | |
37 | \r | |
332f1f44 | 38 | \r |
39 | private:\r | |
40 | \r | |
fae5f6bb | 41 | //Clean up\r |
42 | void CleanUp();\r | |
43 | \r | |
4dca60a8 | 44 | //Get the AOD event from whereever it might be accessible\r |
45 | AliAODEvent * GetAODEvent();\r | |
46 | \r | |
fae5f6bb | 47 | //Get Conversion gammas branch\r |
48 | TClonesArray * GetConversionGammas(const AliAODEvent * aodEvent);\r | |
49 | \r | |
50 | //Create PWG4 particles from the aod objects\r | |
51 | AliAODPWG4ParticleCorrelation * PWG4PartFromGammaConvAODObject(AliGammaConversionAODObject * gcObject, TString detector);\r | |
52 | \r | |
53 | //Fill AOD tree with PWG4 particles\r | |
54 | void FillPWG4PartCorrBranch( TClonesArray * gcBranch, TClonesArray * partCorrBranch, TString detector);\r | |
332f1f44 | 55 | \r |
fae5f6bb | 56 | //Is particle isolated\r |
57 | Bool_t IsIsolated( AliAODPWG4ParticleCorrelation * particle, TClonesArray * tracks, Float_t coneSize, Float_t ptThreshold);\r | |
58 | \r | |
59 | //Process conv gamma\r | |
60 | void ProcessConvGamma( const AliAODEvent * const aodEvent );\r | |
61 | \r | |
62 | //Process calorimeters\r | |
63 | void ProcessCalorimeters( const AliAODEvent * const aodEvent );\r | |
64 | \r | |
65 | //Correlate particle with jets\r | |
66 | void CorrelateWithJets(AliAODPWG4ParticleCorrelation * photon, const TClonesArray * const jets);\r | |
67 | \r | |
68 | //Is eta - phi distance smaller than conesize ?\r | |
69 | inline Bool_t IsInCone(Float_t dEta, Float_t dPhi, Float_t coneSize) { \r | |
70 | return ( (dEta*dEta + dPhi*dPhi) < coneSize*coneSize);\r | |
71 | }\r | |
72 | \r | |
332f1f44 | 73 | TList *fOutputList; //! Output list\r |
74 | TH1F *fHistPt; //! Pt spectrum\r | |
75 | TH1F *fHistPtPhos; //! Pt spectrum\r | |
76 | TH1F *fHistPtEmcal; //! Pt spectrum\r | |
77 | TH1F *fHistPtJets; //! Pt spectrum\r | |
4dca60a8 | 78 | TH1F *fHistGammaJets; //!Phi correlations\r |
fae5f6bb | 79 | TH1F *fHistGammaJetsIso; //!Phi correlations\r |
80 | \r | |
81 | \r | |
82 | Float_t fMinPt; //Minimum pt for correlation\r | |
83 | Float_t fConeSize; //cone size for isolation\r | |
84 | Float_t fPtThreshold; //Threshold pt for isolation\r | |
85 | \r | |
332f1f44 | 86 | TString fDeltaAODFileName;//! File where Gamma Conv AOD is located, if not in default AOD\r |
87 | \r | |
fae5f6bb | 88 | TClonesArray * fPhotons;\r |
89 | \r | |
332f1f44 | 90 | AliAnalysisTaskGammaJet(const AliAnalysisTaskGammaJet&); // not implemented\r |
91 | AliAnalysisTaskGammaJet& operator=(const AliAnalysisTaskGammaJet&); // not implemented\r | |
92 | \r | |
4dca60a8 | 93 | ClassDef(AliAnalysisTaskGammaJet, 2); // example of analysis\r |
332f1f44 | 94 | };\r |
95 | \r | |
96 | #endif\r |