Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
pi0Efficiency.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file pi0Efficiency.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef PI0EFFICIENCY_H
4 #define PI0EFFICIENCY_H
5 
6 #include <fun4all/SubsysReco.h>
7 
8 #include <string>
9 
10 class PHCompositeNode;
11 //TopNode
12 class PHCompositeNode;
13 //histos and stuff
14 class TH1F;
15 class TH3F;
16 class TH2F;
17 class TH2I;
18 class TString;
19 //emcal stuff
21 class RawCluster;
23 class RawTowerContainer;
24 class RawTower;
25 //tracking for iso cone
26 class SvtxTrackMap;
27 //vertex info
28 class GlobalVertexMap;
29 class GlobalVertex;
30 //Fun4all
32 class TFile;
34 class PHG4Particle;
35 class PHG4VtxPoint;
36 
37 const int nEtaBins = 5;
38 
39 class pi0Efficiency : public SubsysReco
40 {
41  public:
42 
43  pi0Efficiency(const std::string &name, const std::string &outName);
44 
45  ~pi0Efficiency() override;
46 
47 
48  int Init(PHCompositeNode *topNode) override;
49 
50  int InitRun(PHCompositeNode *topNode) override;
51 
52  int process_event(PHCompositeNode *topNode) override;
53 
55  int ResetEvent(PHCompositeNode *topNode) override;
56 
58  int EndRun(const int runnumber) override;
59 
61  int End(PHCompositeNode *topNode) override;
62 
64  int Reset(PHCompositeNode * /*topNode*/) override;
65 
66  void Print(const std::string &what = "ALL") const override;
67 
68  private:
69  //functors
70  int getEtaBin(float eta);
72  //this thing
74  //histos
76  TH1F *clusterE;
77  TH1F *photonE;
79  TH2F *pi0EScale;
81  TH1F *unmatchedE;
84  TH1F *hMassRat;
85 
86  Fun4AllHistoManager *hm = nullptr;
87  TFile *out;
88 };
89 
90 #endif // PI0EFFICIENCY_H