]>
Commit | Line | Data |
---|---|---|
0b777a09 | 1 | #ifndef ALIHADCORRTASK_H |
2 | #define ALIHADCORRTASK_H | |
3 | ||
4 | // $Id$ | |
5 | ||
6 | class TClonesArray; | |
0b777a09 | 7 | class TList; |
1f6c8e39 | 8 | class TH1F; |
9 | class TH2F; | |
10 | class AliEmcalParticle; | |
1f6fff78 | 11 | class TString; |
0b777a09 | 12 | |
1f6c8e39 | 13 | #include "AliAnalysisTaskEmcal.h" |
14 | ||
15 | class AliHadCorrTask : public AliAnalysisTaskEmcal { | |
0b777a09 | 16 | |
0b777a09 | 17 | public: |
0b777a09 | 18 | AliHadCorrTask(); |
d6f334b5 | 19 | AliHadCorrTask(const char *name); |
5d845887 | 20 | AliHadCorrTask(const char *name, Bool_t histo); |
0b777a09 | 21 | virtual ~AliHadCorrTask(); |
22 | ||
c7d52659 | 23 | void UserCreateOutputObjects(); |
24 | void Terminate(Option_t *); | |
0b777a09 | 25 | |
c7d52659 | 26 | void SetEexcl(Double_t Emin) { fEexclCell = Emin ; } |
27 | void SetEtaMatch(Double_t eta) { fEtaMatch = eta ; } | |
28 | void SetHadCorr(Double_t c) { fHadCorr = c ; } | |
29 | void SetOutClusName(const char *n) { fOutCaloName = n ; } | |
30 | void SetPhiMatch(Double_t phi) { fPhiMatch = phi ; } | |
31 | void SetTrackClus(Int_t c) { fDoTrackClus = c ; } | |
0b777a09 | 32 | |
33 | protected: | |
c7d52659 | 34 | Double_t ApplyHadCorrOneTrack(AliEmcalParticle *emccluster, Double_t hadCorr); |
35 | Double_t ApplyHadCorrAllTracks(AliEmcalParticle *emccluster, Double_t hadCorr); | |
36 | void DoMatchedTracksLoop(AliEmcalParticle *emccluster, Double_t &totalTrkP, Int_t &Nmatches); | |
37 | void DoTrackClusLoop() ; | |
38 | Double_t GetEtaSigma(Int_t pbin) const; | |
39 | Int_t GetMomBin(Double_t pt) const; | |
40 | Double_t GetPhiMean(Int_t pbin, Int_t centbin) const; | |
41 | Double_t GetPhiSigma(Int_t pbin, Int_t centbin) const; | |
42 | virtual Bool_t Run() ; | |
43 | ||
44 | TString fOutCaloName; // name of output clusters | |
45 | Double_t fPhiMatch; // phi match value (pp=0.050) | |
46 | Double_t fEtaMatch; // eta match value (pp=0.025) | |
47 | Int_t fDoTrackClus; // loop over tracks first | |
48 | Double_t fHadCorr; // hadronic correction (fraction) | |
49 | Double_t fEexclCell; // energy/cell that we cannot subtract from the clusters | |
50 | TClonesArray *fOutClusters; //!output cluster collection | |
1f6c8e39 | 51 | TH2F *fHistMatchEtaPhi[8][9][2]; //!output histograms |
52 | TH2F *fHistMatchEvsP[4]; //!output histograms | |
53 | TH2F *fHistNMatchEnergy[4]; //!output histograms | |
54 | TH2F *fHistNCellsEnergy[8][4]; //!output histograms | |
55 | TH2F *fHistMatchdRvsEP[4]; //!output histograms | |
56 | TH1F *fHistNclusvsCent; //!output histograms | |
57 | TH1F *fHistNclusMatchvsCent; //!output histograms | |
f54a0dd2 | 58 | TH2F *fHistEbefore; //!output histograms |
59 | TH2F *fHistEafter; //!output histograms | |
1f6c8e39 | 60 | TH2F *fHistEoPCent; //!output histograms |
61 | TH2F *fHistNMatchCent; //!output histograms | |
62 | TH2F *fHistNMatchCent_trk; //!output histograms | |
63 | TH1F *fHistEsubPch[8]; //!output histograms | |
64 | TH2F *fHistEsubPchRat[8]; //!output histograms | |
65 | TH1F *fHistCentrality; //!output histograms | |
66 | TH2F *fHistNoMatchEtaPhi; //!output histograms | |
0b777a09 | 67 | |
68 | private: | |
69 | AliHadCorrTask(const AliHadCorrTask&); // not implemented | |
70 | AliHadCorrTask &operator=(const AliHadCorrTask&); // not implemented | |
71 | ||
1f6c8e39 | 72 | ClassDef(AliHadCorrTask, 9) // Hadronic correction task |
0b777a09 | 73 | }; |
74 | #endif |