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