1 #ifndef ALIANALYSISTASKPI0V2_H
2 #define ALIANALYSISTASKPI0V2_H
10 class AliESDCaloCluster;
11 class AliESDtrackCuts;
14 #include "AliAnalysisTaskSE.h"
16 class AliAnalysisTaskPi0V2 : public AliAnalysisTaskSE {
18 AliAnalysisTaskPi0V2();
19 AliAnalysisTaskPi0V2(const char *name);
20 virtual ~AliAnalysisTaskPi0V2();
22 virtual void UserCreateOutputObjects();
23 virtual void UserExec(Option_t *option);
24 virtual void Terminate(Option_t *);
26 Double_t GetCrossEnergy(const AliVCluster *cluster, Short_t &idmax) const;
27 Double_t GetMaxCellEnergy(const AliVCluster *cluster, Short_t &id) const;
28 void GetMom(TLorentzVector& p, const AliESDCaloCluster *c, Double_t *vertex);
29 Bool_t IsGoodCluster(const AliESDCaloCluster *c) const;
30 Bool_t IsGoodPion(const TLorentzVector& p1, const TLorentzVector& p2) const;
31 Bool_t IsWithinFiducialVolume(Short_t id) const;
32 void FillPion(const TLorentzVector& p1, const TLorentzVector& p2, Double_t EPV0r, Double_t EPV0A, Double_t EPV0C, Double_t EPTPC);
33 void SetsubEventMethod(Bool_t b ) { fcheckEP2sub =b ;}
36 TList *fOutput; // Output list
37 AliESDtrackCuts *fTrackCuts; // Track cuts
38 AliESDEvent *fESD; //!ESD object
39 Bool_t fcheckEP2sub; //! do 2 sub event method
40 Double_t fCentrality; //! Centrality
41 Double_t fEPTPC; //! Evt plane TPC
42 Double_t fEPTPCreso; //! resolution of TPC method
43 Double_t fEPV0; //! EP V0
44 Double_t fEPV0A; //! EP V0A
45 Double_t fEPV0C; //! EP V0C
46 Double_t fEPV0Ar; //! EP V0A reduced
47 Double_t fEPV0Cr; //! EP V0C reduced
48 Double_t fEPV0r; //! EP V0 reduced
49 Double_t fEPV0AR4; //! EP V0A ring4 only
50 Double_t fEPV0AR5; //! EP V0A ring5 only
51 Double_t fEPV0AR6; //! EP V0A ring6 only
52 Double_t fEPV0AR7; //! EP V0A ring7 only
53 Double_t fEPV0CR0; //! EP V0C ring0 only
54 Double_t fEPV0CR1; //! EP V0C ring1 only
55 Double_t fEPV0CR2; //! EP V0C ring2 only
56 Double_t fEPV0CR3; //! EP V0C ring3 only
57 TH2F *hEPTPC; //! 2-D histo EPTPC vs cent
58 TH2F *hresoTPC; //! 2-D histo TPC resolution vs cent
59 TH2F *hEPV0; //! 2-D histo EPV0 vs cent
60 TH2F *hEPV0A; //! 2-D histo EPV0A vs cent
61 TH2F *hEPV0C; //! 2-D histo EPV0C vs cent
62 TH2F *hEPV0Ar; //! 2-D histo EPV0Ar vs cent
63 TH2F *hEPV0Cr; //! 2-D histo EPV0Cr vs cent
64 TH2F *hEPV0r; //! 2-D histo EPV0r vs cent
65 TH2F *hEPV0AR4; //! 2-D histo EPV0AR4 vs cent
66 TH2F *hEPV0AR7; //! 2-D histo EPV0AR7 vs cent
67 TH2F *hEPV0CR0; //! 2-D histo EPV0AR0 vs cent
68 TH2F *hEPV0CR3; //! 2-D histo EPV0AR3 vs cent
69 TH2F *hdifV0A_V0CR0; //! 2-D histo diff V0A, V0CR0 vs cent
70 TH2F *hdifV0A_V0CR3; //! 2-D histo diff V0A, V0CR3 vs cent
71 TH2F *hdifV0ACR0_V0CR3; //! 2-D histo diff V0CR0, V0CR3 vs cent
72 TH2F *hdifV0C_V0AR4; //! 2-D histo diff V0C, V0AR4 vs cent
73 TH2F *hdifV0C_V0AR7; //! 2-D histo diff V0C, V0AR7 vs cent
74 TH2F *hdifV0AR4_V0AR7; //! 2-D histo diff V0AR7, V0AR4 vs cent
75 THnSparse *fHEPV0r; //! Flow 4-D Histo
76 THnSparse *fHEPV0A; //! Flow 4-D Histo
77 THnSparse *fHEPV0C; //! Flow 4-D Histo
78 THnSparse *fHEPTPC; //! Flow 4-D Histo
80 AliAnalysisTaskPi0V2(const AliAnalysisTaskPi0V2&); // not implemented
81 AliAnalysisTaskPi0V2& operator=(const AliAnalysisTaskPi0V2&); // not implemented
83 ClassDef(AliAnalysisTaskPi0V2, 1); // example of analysis