1 #ifndef AliAnalysisTaskGCPartToPWG4Part_cxx
\r
2 #define AliAnalysisTaskGCPartToPWG4Part_cxx
\r
4 // example of an analysis task creating a p_t spectrum
\r
5 // Authors: Svein Lindal
\r
9 class AliAODConversionPhoton;
\r
10 class AliAODPWG4ParticleCorrelation;
\r
11 class AliAODPWG4Particle;
\r
14 class AliMCAnalysisUtils;
\r
15 class AliAODMCHeader;
\r
17 #include "AliAnalysisTaskSE.h"
\r
19 class AliAnalysisTaskGCPartToPWG4Part : public AliAnalysisTaskSE {
\r
23 AliAnalysisTaskGCPartToPWG4Part();
\r
24 AliAnalysisTaskGCPartToPWG4Part(const char *name);
\r
25 virtual ~AliAnalysisTaskGCPartToPWG4Part();
\r
27 virtual void UserCreateOutputObjects();
\r
28 virtual void UserExec(Option_t *option);
\r
29 virtual void Terminate(Option_t *);
\r
31 void SetDeltaAODFileName(TString string) { fDeltaAODFileName = string;}
\r
32 void SetGammaBranchName(TString string) { fAODBranchName = string; }
\r
35 void SetDebugLevel(Int_t debugLevel) { fDebugLevel = debugLevel; }
\r
36 Int_t GetDebugLevel() const { return fDebugLevel; }
\r
38 void SetGammaCutId(TString cut) { fGammaCutString = Form("GammaConv_%s", cut.Data());}
\r
39 void SetPionCutId(TString cut) { fPionCutString = Form("GammaConv_%s", cut.Data());}
\r
47 //Get the AOD event from whereever it might be accessible
\r
48 AliAODEvent * GetAODEvent();
\r
50 Bool_t BothTracksPresent(const AliAODConversionPhoton * const photon, const TClonesArray * const tracks) const;
\r
51 Bool_t BothGammaPresent(const AliAODConversionPhoton * const pion, const TClonesArray * const photons, const TClonesArray * const tracks) const;
\r
53 //Get Conversion gammas branch
\r
54 TClonesArray * GetConversionGammas(const AliAODEvent * aodEvent) const;
\r
55 TClonesArray * GetPions(const AliAODEvent * aodEvent) const;
\r
56 TClonesArray * GetAODBranch(const AliAODEvent * aodEvent, TString branchName) const;
\r
58 //Fill AOD tree with PWG4 particles
\r
59 AliAODPWG4ParticleCorrelation * AddToAOD(AliAODConversionPhoton * aodO, TClonesArray * branch, TString detector);
\r
60 AliAODPWG4ParticleCorrelation * AddPionToAOD(AliAODConversionPhoton * pion, TClonesArray * branch, TString detector);
\r
61 //Process conv gamma
\r
62 void ProcessConvGamma( const AliAODEvent * const aodEvent );
\r
64 TString fDeltaAODFileName;//! File where Gamma Conv AOD is located, if not in default AOD
\r
65 TString fGammaCutString; //! The cut string of the conversion analysis used to produce input AOD
\r
66 TString fPionCutString; //! The cut string of the conversion analysis used to produce input AOD
\r
67 TString fAODBranchName;
\r
68 TClonesArray * fAODPWG4Photons;
\r
69 TClonesArray * fAODPWG4Pi0;
\r
75 AliAnalysisTaskGCPartToPWG4Part(const AliAnalysisTaskGCPartToPWG4Part&); // not implemented
\r
76 AliAnalysisTaskGCPartToPWG4Part& operator=(const AliAnalysisTaskGCPartToPWG4Part&); // not implemented
\r
78 //Int_t CheckTag(AliAODPWG4ParticleCorrelation * particle, TClonesArray * tracks, TClonesArray * arrayMC, AliAODMCHeader * mcHeader);
\r
80 ClassDef(AliAnalysisTaskGCPartToPWG4Part, 1); // example of analysis
\r