#ifndef ALIANALYSISTASKTAGGEDPHOTONS_H
#define ALIANALYSISTASKTAGGEDPHOTONS_H
#include "AliAnalysisTaskSE.h"
class AliAnalysisUtils ;
class AliAODEvent ;
class THashList ;
class TH2I ;
class AliPHOSGeometry;
class AliCaloPhoton;
class AliAODMCParticle ;
class AliVCluster ;
class AliTriggerAnalysis ;
class TParticle ;
class AliAnalysisTaskTaggedPhotons : public AliAnalysisTaskSE {
public:
AliAnalysisTaskTaggedPhotons() ;
AliAnalysisTaskTaggedPhotons(const char *name) ;
AliAnalysisTaskTaggedPhotons(const AliAnalysisTaskTaggedPhotons& ap) ;
AliAnalysisTaskTaggedPhotons& operator = (const AliAnalysisTaskTaggedPhotons& ap) ;
virtual ~AliAnalysisTaskTaggedPhotons() ;
virtual void UserCreateOutputObjects();
virtual void Init() ;
virtual void LocalInit() { Init() ; }
virtual void UserExec(Option_t * opt = "") ;
virtual void Terminate(Option_t * opt = "") ;
void SetTrigger(Bool_t isPHOSTrig){fIsMB=isPHOSTrig;}
void SetMC(Bool_t isMC=kTRUE){fIsMC=isMC;}
void SetFastMC(void){fIsFastMC=kTRUE;fIsMC=kTRUE; }
void SetPi0WeightParameters(TArrayD * ar) ;
void SetDustanceToBad(Float_t cut=2.5){fMinBCDistance=cut;}
protected:
void FillMCHistos() ;
void FillTaggingHistos() ;
Int_t GetFiducialArea(const Float_t * pos)const ;
Int_t IsSameParent(const AliCaloPhoton *p1, const AliCaloPhoton *p2) const;
Bool_t IsGoodChannel(Int_t mod, Int_t ix, Int_t iz) ;
Double_t InPi0Band(Double_t m, Double_t pt)const;
Bool_t TestDisp(Double_t l0, Double_t l1, Double_t e)const ;
Bool_t TestTOF(Double_t ,Double_t )const{return kTRUE;}
Bool_t TestCharged(Double_t dr,Double_t en)const ;
void InitGeometry() ;
Int_t EvalIsolation(TLorentzVector * ph,Bool_t isPhoton) ;
Bool_t TestLambda(Double_t pt,Double_t l1,Double_t l2) ;
Bool_t TestPID(Int_t iPID, AliCaloPhoton* part) ;
Double_t PrimaryParticleWeight(AliAODMCParticle * particle) ;
Int_t FindPrimary(AliVCluster*, Bool_t&);
void FillHistogram(const char * key,Double_t x) const ;
void FillHistogram(const char * key,Double_t x, Double_t y) const ;
void FillHistogram(const char * key,Double_t x, Double_t y, Double_t z) const ;
void FillPIDHistograms(const char * name, const AliCaloPhoton * p) const ;
void FillPIDHistograms(const char * name, const AliCaloPhoton * p ,Double_t y) const ;
void FillPIDHistograms(const char * name, const AliCaloPhoton * p , const AliCaloPhoton * p2,Double_t y, Bool_t isReal) const ;
private:
AliPHOSGeometry *fPHOSgeom;
THashList * fOutputContainer ;
TClonesArray *fStack ;
TClonesArray * fTrackEvent ;
TClonesArray * fPHOSEvent ;
TList * fPHOSEvents[10][5] ;
TList * fCurrentMixedList;
AliTriggerAnalysis * fTriggerAnalysis ;
AliAnalysisUtils * fUtils ;
Float_t fZmax ;
Float_t fZmin ;
Float_t fPhimax ;
Float_t fPhimin ;
Float_t fMinBCDistance;
Double_t fWeightParamPi0[7] ;
Double_t fCentrality;
Int_t fCentBin ;
Bool_t fIsMB ;
Bool_t fIsMC ;
Bool_t fIsFastMC;
TH2I * fPHOSBadMap[6] ;
ClassDef(AliAnalysisTaskTaggedPhotons, 3);
};
#endif // ALIANALYSISTASKTAGGEDPHOTONS_H
AliAnalysisTaskTaggedPhotons.h:1 AliAnalysisTaskTaggedPhotons.h:2 AliAnalysisTaskTaggedPhotons.h:3 AliAnalysisTaskTaggedPhotons.h:4 AliAnalysisTaskTaggedPhotons.h:5 AliAnalysisTaskTaggedPhotons.h:6 AliAnalysisTaskTaggedPhotons.h:7 AliAnalysisTaskTaggedPhotons.h:8 AliAnalysisTaskTaggedPhotons.h:9 AliAnalysisTaskTaggedPhotons.h:10 AliAnalysisTaskTaggedPhotons.h:11 AliAnalysisTaskTaggedPhotons.h:12 AliAnalysisTaskTaggedPhotons.h:13 AliAnalysisTaskTaggedPhotons.h:14 AliAnalysisTaskTaggedPhotons.h:15 AliAnalysisTaskTaggedPhotons.h:16 AliAnalysisTaskTaggedPhotons.h:17 AliAnalysisTaskTaggedPhotons.h:18 AliAnalysisTaskTaggedPhotons.h:19 AliAnalysisTaskTaggedPhotons.h:20 AliAnalysisTaskTaggedPhotons.h:21 AliAnalysisTaskTaggedPhotons.h:22 AliAnalysisTaskTaggedPhotons.h:23 AliAnalysisTaskTaggedPhotons.h:24 AliAnalysisTaskTaggedPhotons.h:25 AliAnalysisTaskTaggedPhotons.h:26 AliAnalysisTaskTaggedPhotons.h:27 AliAnalysisTaskTaggedPhotons.h:28 AliAnalysisTaskTaggedPhotons.h:29 AliAnalysisTaskTaggedPhotons.h:30 AliAnalysisTaskTaggedPhotons.h:31 AliAnalysisTaskTaggedPhotons.h:32 AliAnalysisTaskTaggedPhotons.h:33 AliAnalysisTaskTaggedPhotons.h:34 AliAnalysisTaskTaggedPhotons.h:35 AliAnalysisTaskTaggedPhotons.h:36 AliAnalysisTaskTaggedPhotons.h:37 AliAnalysisTaskTaggedPhotons.h:38 AliAnalysisTaskTaggedPhotons.h:39 AliAnalysisTaskTaggedPhotons.h:40 AliAnalysisTaskTaggedPhotons.h:41 AliAnalysisTaskTaggedPhotons.h:42 AliAnalysisTaskTaggedPhotons.h:43 AliAnalysisTaskTaggedPhotons.h:44 AliAnalysisTaskTaggedPhotons.h:45 AliAnalysisTaskTaggedPhotons.h:46 AliAnalysisTaskTaggedPhotons.h:47 AliAnalysisTaskTaggedPhotons.h:48 AliAnalysisTaskTaggedPhotons.h:49 AliAnalysisTaskTaggedPhotons.h:50 AliAnalysisTaskTaggedPhotons.h:51 AliAnalysisTaskTaggedPhotons.h:52 AliAnalysisTaskTaggedPhotons.h:53 AliAnalysisTaskTaggedPhotons.h:54 AliAnalysisTaskTaggedPhotons.h:55 AliAnalysisTaskTaggedPhotons.h:56 AliAnalysisTaskTaggedPhotons.h:57 AliAnalysisTaskTaggedPhotons.h:58 AliAnalysisTaskTaggedPhotons.h:59 AliAnalysisTaskTaggedPhotons.h:60 AliAnalysisTaskTaggedPhotons.h:61 AliAnalysisTaskTaggedPhotons.h:62 AliAnalysisTaskTaggedPhotons.h:63 AliAnalysisTaskTaggedPhotons.h:64 AliAnalysisTaskTaggedPhotons.h:65 AliAnalysisTaskTaggedPhotons.h:66 AliAnalysisTaskTaggedPhotons.h:67 AliAnalysisTaskTaggedPhotons.h:68 AliAnalysisTaskTaggedPhotons.h:69 AliAnalysisTaskTaggedPhotons.h:70 AliAnalysisTaskTaggedPhotons.h:71 AliAnalysisTaskTaggedPhotons.h:72 AliAnalysisTaskTaggedPhotons.h:73 AliAnalysisTaskTaggedPhotons.h:74 AliAnalysisTaskTaggedPhotons.h:75 AliAnalysisTaskTaggedPhotons.h:76 AliAnalysisTaskTaggedPhotons.h:77 AliAnalysisTaskTaggedPhotons.h:78 AliAnalysisTaskTaggedPhotons.h:79 AliAnalysisTaskTaggedPhotons.h:80 AliAnalysisTaskTaggedPhotons.h:81 AliAnalysisTaskTaggedPhotons.h:82 AliAnalysisTaskTaggedPhotons.h:83 AliAnalysisTaskTaggedPhotons.h:84 AliAnalysisTaskTaggedPhotons.h:85 AliAnalysisTaskTaggedPhotons.h:86 AliAnalysisTaskTaggedPhotons.h:87 AliAnalysisTaskTaggedPhotons.h:88 AliAnalysisTaskTaggedPhotons.h:89 AliAnalysisTaskTaggedPhotons.h:90 AliAnalysisTaskTaggedPhotons.h:91 AliAnalysisTaskTaggedPhotons.h:92 AliAnalysisTaskTaggedPhotons.h:93 AliAnalysisTaskTaggedPhotons.h:94 AliAnalysisTaskTaggedPhotons.h:95 AliAnalysisTaskTaggedPhotons.h:96 AliAnalysisTaskTaggedPhotons.h:97 AliAnalysisTaskTaggedPhotons.h:98 AliAnalysisTaskTaggedPhotons.h:99 AliAnalysisTaskTaggedPhotons.h:100