]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/EMCALJetTasks/UserTasks/AliAnalysisTaskSAQA.h
Removed depricated analysis framework, ie renamed
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / UserTasks / AliAnalysisTaskSAQA.h
CommitLineData
c3ba2d3d 1#ifndef ALIANALYSISTASKSAQA_H
2#define ALIANALYSISTASKSAQA_H
3
6e8d91c9 4// $Id$
c3ba2d3d 5
56bd3193 6class TH1;
7class TH2;
8class TH3;
43032ce2 9class THnSparse;
10class AliVVZERO;
c3ba2d3d 11
9239b066 12#include "AliAnalysisTaskEmcalJet.h"
c3ba2d3d 13
9239b066 14class AliAnalysisTaskSAQA : public AliAnalysisTaskEmcalJet {
c3ba2d3d 15 public:
16 AliAnalysisTaskSAQA();
17 AliAnalysisTaskSAQA(const char *name);
18 virtual ~AliAnalysisTaskSAQA();
19
20 void UserCreateOutputObjects();
c3ba2d3d 21
11d18b51 22 void SetCellEnergyCut(Float_t cut) { fCellEnergyCut = cut ; }
393ec2ad 23 void SetParticleLevel(Bool_t s) { fParticleLevel = s ; }
5be3857d 24 void SetMC(Bool_t m) { fIsMC = m ; }
43032ce2 25 void SetAdditionalCentEst(const char* meth2, const char* meth3="") { fCentMethod2 = meth2; fCentMethod3 = meth3; }
26 void SetDoV0QA(Int_t b) { fDoV0QA = b ; }
3fe08cdb 27 void SetDoEPQA(Int_t b) { fDoEPQA = b ; }
26516bb5 28 void SetMaxCellsInCluster(Int_t b) { fMaxCellsInCluster = b ; }
7cd832c7 29 void SetDoLeadingObjectPosition(Int_t b) { fDoLeadingObjectPosition = b ; }
c3ba2d3d 30
31 protected:
32
43032ce2 33 void ExecOnce() ;
079b4732 34 Bool_t FillHistograms() ;
26516bb5 35 void FillEventQAHisto(Float_t cent, Float_t cent2, Float_t cent3, Float_t v0a, Float_t v0c, Float_t ep, Float_t rho,
36 Int_t ntracks, Int_t nclusters, Int_t ncells, Int_t njets,
7cd832c7 37 Float_t maxTrackPt, Float_t maxTrackEta, Float_t maxTrackPhi,
38 Float_t maxClusterE, Float_t maxClusterEta, Float_t maxClusterPhi,
39 Float_t maxJetPt, Float_t maxJetEta, Float_t maxJetPhi);
079b4732 40 Bool_t RetrieveEventObjects() ;
41 Int_t DoCellLoop(Float_t &sum, Float_t &sum_cut) ;
7cd832c7 42 Int_t DoTrackLoop(Float_t &sum, AliVParticle* &leading) ;
43 Int_t DoClusterLoop(Float_t &sum, AliVCluster* &leading) ;
44 Int_t DoJetLoop(AliEmcalJet* &leading) ;
59f16b27 45 Double_t GetFcross(AliVCluster *cluster, AliVCaloCells *cells) ;
e2b76953 46 Double_t GetCellEnergySum(AliVCluster *cluster, AliVCaloCells *cells) ;
c3ba2d3d 47
3e951e32 48 Float_t fCellEnergyCut; // Energy cell cut
393ec2ad 49 Bool_t fParticleLevel; // Set particle level analysis
5be3857d 50 Bool_t fIsMC; // Trigger, MC analysis
43032ce2 51 TString fCentMethod2; // Centrality method 2
52 TString fCentMethod3; // Centrality method 3
53 Int_t fDoV0QA; // Add V0 QA histograms
3fe08cdb 54 Int_t fDoEPQA; // Add event plane QA histograms
7cd832c7 55 Int_t fDoLeadingObjectPosition; // Add axis for leading object position (eta-phi)
26516bb5 56 Int_t fMaxCellsInCluster; // Maximum number (approx) of cells in a cluster
43032ce2 57 Double_t fCent2; //!Event centrality with method 2
58 Double_t fCent3; //!Event centrality with method 3
59 AliVVZERO *fVZERO; //!Event V0 object
60 Double_t fV0ATotMult; //!Event V0A total multiplicity
61 Double_t fV0CTotMult; //!Event V0C total multiplicity
7c1d624c 62
3e951e32 63 // General histograms
3fe08cdb 64 THnSparse *fHistEventQA; //!Event-wise QA observables
a487deae 65
3e951e32 66 // Tracks
4358e58a 67 TH1 *fHistTrNegativeLabels; //!Percentage of negative label tracks
68 TH1 *fHistTrZeroLabels; //!Percentage of tracks with label=0
56bd3193 69 TH3 *fHistTrPhiEtaPt[4][4]; //!Phi-Eta-Pt distribution of tracks
43032ce2 70 TH2 *fHistTrPhiEtaZeroLab[4]; //!Phi-Eta distribution of tracks with label=0
71 TH1 *fHistTrPtZeroLab[4]; //!Pt distribution of tracks with label=0
56bd3193 72 TH2 *fHistTrEmcPhiEta[4]; //!Phi-Eta emcal propagated distribution of tracks
43032ce2 73 TH1 *fHistTrEmcPt[4]; //!Pt emcal propagated distribution of tracks
56bd3193 74 TH2 *fHistTrPhiEtaNonProp[4]; //!Phi-Eta distribution of non emcal propagated tracks
43032ce2 75 TH1 *fHistTrPtNonProp[4]; //!Pt distribution of non emcal propagated tracks
56bd3193 76 TH2 *fHistDeltaEtaPt[4]; //!Eta-EtaProp vs. Pt
77 TH2 *fHistDeltaPhiPt[4]; //!Phi-PhiProp vs. Pt
e2b76953 78 TH2 *fHistDeltaPtvsPt[4]; //!Pt-PtProp vs. Pt
a487deae 79
3e951e32 80 // Clusters
56bd3193 81 TH3 *fHistClusPhiEtaEnergy[4]; //!Phi-Eta-Energy distribution of clusters
e2b76953 82 TH2 *fHistClusDeltaPhiEPEnergy[4];//!DeltaPhi EP vs Energy of clusters
56bd3193 83 TH2 *fHistNCellsEnergy; //!Number of cells vs. energy of cluster
84 TH2 *fHistFcrossEnergy; //!Fcross vs. energy of cluster
85 TH2 *fHistClusTimeEnergy; //!Time vs. energy of cluster
8d3d1996 86 TH1 *fHistClusMCEnergyFraction[4];//!MC energy fraction (embedding)
e2b76953 87 TH2 *fHistClusEnergyMinusCellEnergy;//!Cluster energy - sum(cell_energy) vs cluster energy
a487deae 88
3e951e32 89 // EMCAL Cells
56bd3193 90 TH2 *fHistCellsAbsIdEnergy; //!Energy spectrum of cells
a487deae 91
3e951e32 92 // Had corr QA
56bd3193 93 TH2 *fHistChVSneCells; //!Charged vs. neutral (cells) energy
94 TH2 *fHistChVSneClus; //!Charged vs. neutral (clusters) energy
95 TH2 *fHistChVSneCorrCells; //!Charged vs. neutral (corrected cells) energy
a487deae 96
e2b76953 97 // Jets
98 TH2 *fHistJetsPhiEta[4]; //!Phi-Eta distribution of jets
99 TH2 *fHistJetsPtArea[4]; //!Pt vs. area of jets
100
c3ba2d3d 101 private:
102 AliAnalysisTaskSAQA(const AliAnalysisTaskSAQA&); // not implemented
103 AliAnalysisTaskSAQA &operator=(const AliAnalysisTaskSAQA&); // not implemented
104
7cd832c7 105 ClassDef(AliAnalysisTaskSAQA, 23) // Quality task for Emcal analysis
c3ba2d3d 106};
107#endif