]>
Commit | Line | Data |
---|---|---|
69e3467d | 1 | #ifndef ALIANALYSISTASKEMCALJETMASSSTRUCTURE_H |
2 | #define ALIANALYSISTASKEMCALJETMASSSTRUCTURE_H | |
3 | ||
4 | class TH1; | |
5 | class TH2; | |
6 | class TH3; | |
7 | class TProfile2D; | |
8 | class THnSparse; | |
9 | class TClonesArray; | |
10 | class TArrayI; | |
11 | class TRandom3; | |
12 | ||
13 | class AliAnalysisManager; | |
14 | class AliJetContainer; | |
15 | class AliEmcalJet; | |
16 | ||
17 | #include "AliAnalysisTaskEmcalJet.h" | |
18 | ||
19 | class AliAnalysisTaskEmcalJetMassStructure : public AliAnalysisTaskEmcalJet { | |
20 | public: | |
21 | enum JetMassType { | |
22 | kRaw = 0, //mass form anti-kt 4-vector | |
23 | kDeriv = 1 //area based subtracted jet mass | |
24 | }; | |
25 | ||
26 | AliAnalysisTaskEmcalJetMassStructure(); | |
27 | AliAnalysisTaskEmcalJetMassStructure(const char *name); | |
28 | virtual ~AliAnalysisTaskEmcalJetMassStructure(); | |
29 | ||
30 | void UserCreateOutputObjects(); | |
31 | void Terminate(Option_t *option); | |
32 | ||
33 | //Setters | |
34 | void SetJetContainerBase(Int_t c) { fContainerBase = c ; } | |
35 | void SetMinFractionShared(Double_t f) { fMinFractionShared = f ; } | |
36 | void SetJetMassType(JetMassType t) { fJetMassType = t ; } | |
37 | void SetFixedTrackEfficiency(Double_t eff) { fEfficiencyFixed = eff ; } | |
38 | ||
39 | protected: | |
40 | Bool_t RetrieveEventObjects(); | |
41 | Bool_t Run(); | |
42 | Bool_t FillHistograms(); | |
43 | ||
44 | Bool_t GetSortedArray(Int_t indexes[], Float_t dr[], AliEmcalJet *jet) const; | |
45 | Double_t GetJetMass(AliEmcalJet *jet); | |
46 | Double_t GetEfficiency(Double_t pt); | |
47 | ||
48 | Int_t fContainerBase; // jets to be analyzed | |
49 | Double_t fMinFractionShared; // only fill histos for jets if shared fraction larger than X | |
50 | JetMassType fJetMassType; // jet mass type to be used | |
51 | ||
52 | TRandom3 *fRandom; //! random number generator | |
53 | Double_t fEfficiencyFixed; // fixed efficiency for all pT and all types of tracks | |
54 | ||
55 | TH3F **fh3PtDRMass; //! jet pT vs dr(jet axis, constituent) vs cumulative mass density | |
56 | TH3F **fh3PtDRRho; //! jet pT vs dr(jet axis, constituent) vs cumulative pt density | |
57 | TH3F **fh3PtDRMassCorr; //! jet pT vs dr(jet axis, constituent) vs cumulative mass density corrected | |
58 | TH3F **fh3PtDRRhoCorr; //! jet pT vs dr(jet axis, constituent) vs cumulative pt density corrected | |
59 | TH2F **fh2PtMass; //! jet pT vs mass | |
60 | TH2F **fh2PtMassCorr; //! jet pT vs mass corrected | |
61 | THnSparse *fhnMassResponse; //! response matrix | |
62 | THnSparse *fhnMassResponseCorr; //! response matrix corrected | |
63 | ||
64 | TH3F **fh3JetPtDRTrackPt; //! jet pt vs dr(jet axis, constituent) vs pT,track | |
65 | ||
66 | private: | |
67 | AliAnalysisTaskEmcalJetMassStructure(const AliAnalysisTaskEmcalJetMassStructure&); // not implemented | |
68 | AliAnalysisTaskEmcalJetMassStructure &operator=(const AliAnalysisTaskEmcalJetMassStructure&); // not implemented | |
69 | ||
70 | ClassDef(AliAnalysisTaskEmcalJetMassStructure, 1) | |
71 | }; | |
72 | #endif | |
73 |