]>
Commit | Line | Data |
---|---|---|
cfa7b4df | 1 | #ifndef ALIANALYSISTASKEMCALQGTAGGING_H |
2 | #define ALIANALYSISTASKEMCALQGTAGGING_H | |
3 | ||
4 | class TH1; | |
5 | class TH2; | |
6 | class TH3; | |
7 | class TH3F; | |
8 | class TTree; | |
9 | class THnSparse; | |
10 | class TClonesArray; | |
11 | class TArrayI; | |
12 | class AliAnalysisManager; | |
13 | class AliJetContainer; | |
14 | ||
15 | #include "AliAnalysisTaskEmcalJet.h" | |
16 | ||
17 | ||
18 | ||
19 | class AliAnalysisTaskEmcalQGTagging : public AliAnalysisTaskEmcalJet { | |
20 | public: | |
21 | enum JetShapeType { | |
a68b1989 | 22 | kTrue = 0, // generated jets only |
23 | kTrueDet =1, // detector and generated jets | |
24 | kData = 2, // raw data | |
25 | kDetEmb = 3, //detector embedded jets | |
cfa7b4df | 26 | }; |
27 | ||
a68b1989 | 28 | enum JetShapeSub { |
29 | kNoSub = 0, | |
30 | kConstSub = 1, | |
31 | kDerivSub = 2 | |
32 | } ; | |
33 | ||
cfa7b4df | 34 | AliAnalysisTaskEmcalQGTagging(); |
35 | AliAnalysisTaskEmcalQGTagging(const char *name); | |
36 | virtual ~AliAnalysisTaskEmcalQGTagging(); | |
37 | ||
38 | void UserCreateOutputObjects(); | |
39 | void Terminate(Option_t *option); | |
40 | ||
41 | //Setters | |
42 | void SetJetContainer(Int_t c) { fContainer = c ; } | |
43 | void SetMinFractionShared(Double_t f) { fMinFractionShared = f ; } | |
44 | void SetJetShapeType(JetShapeType t) { fJetShapeType = t ; } | |
a68b1989 | 45 | void SetJetShapeSub(JetShapeSub t) { fJetShapeSub = t ; } |
34b1e79e | 46 | void SetJetPtThreshold(Float_t f) { fPtThreshold = f ; } |
cfa7b4df | 47 | void SetRMatching(Float_t f) { fRMatching = f ;} |
48 | ||
49 | protected: | |
50 | Bool_t RetrieveEventObjects(); | |
51 | Bool_t Run(); | |
52 | Bool_t FillHistograms(); | |
53 | ||
e5aca8ab | 54 | Float_t GetJetMass(AliEmcalJet *jet,Int_t jetContNb); |
a68b1989 | 55 | Float_t Angularity(AliEmcalJet *jet, Int_t jetContNb); |
56 | Float_t GetJetAngularity(AliEmcalJet *jet, Int_t jetContNb); | |
57 | Float_t PTD(AliEmcalJet *jet, Int_t jetContNb); | |
58 | Float_t GetJetpTD(AliEmcalJet *jet, Int_t jetContNb); | |
59 | Float_t Circularity(AliEmcalJet *jet, Int_t jetContNb); | |
60 | Float_t GetJetCircularity(AliEmcalJet *jet, Int_t jetContNb); | |
61 | Float_t LeSub(AliEmcalJet *jet, Int_t jetContNb); | |
62 | Float_t GetJetLeSub(AliEmcalJet *jet, Int_t jetContNb); | |
e5aca8ab | 63 | Float_t GetJetNumberOfConstituents(AliEmcalJet *jet,Int_t jetContNb); |
a68b1989 | 64 | Float_t GetSigma2(AliEmcalJet *jet, Int_t jetContNb); |
65 | Float_t Sigma2(AliEmcalJet *jet, Int_t jetContNb); | |
cfa7b4df | 66 | |
67 | ||
68 | Int_t fContainer; // jets to be analyzed 0 for Base, 1 for subtracted. | |
69 | Float_t fMinFractionShared; // only fill histos for jets if shared fraction larger than X | |
a68b1989 | 70 | JetShapeType fJetShapeType; // jet type to be used |
71 | JetShapeSub fJetShapeSub; // jet subtraction to be used | |
cfa7b4df | 72 | Float_t *fShapesVar; // jet shapes used for the tagging |
34b1e79e | 73 | Float_t fPtThreshold; |
cfa7b4df | 74 | Float_t fRMatching; |
75 | ||
76 | TH2F *fPhiJetCorr6; | |
77 | TH2F *fPhiJetCorr7; | |
78 | TH2F *fEtaJetCorr6; | |
79 | TH2F *fEtaJetCorr7; | |
80 | TH2F *fPtJetCorr; | |
81 | TH1F *fPtJet; | |
82 | ||
83 | ||
84 | TTree *fTreeObservableTagging; //Tree with tagging variables subtracted MC or true MC or raw | |
85 | ||
86 | private: | |
87 | AliAnalysisTaskEmcalQGTagging(const AliAnalysisTaskEmcalQGTagging&); // not implemented | |
88 | AliAnalysisTaskEmcalQGTagging &operator=(const AliAnalysisTaskEmcalQGTagging&); // not implemented | |
89 | ||
a68b1989 | 90 | ClassDef(AliAnalysisTaskEmcalQGTagging, 3) |
cfa7b4df | 91 | }; |
92 | #endif | |
93 |