Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
jetrtrack.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file jetrtrack.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef JETRTRACK_H
4 #define JETRTRACK_H
5 
6 #include <fun4all/SubsysReco.h>
7 
8 #include <string>
9 #include <TF1.h>
10 #include<string.h>
11 #include<TProfile.h>
12 #include<TH1.h>
13 #include<TH2.h>
14 #include <TFile.h>
15 #include <TTree.h>
16 
17 
19 
20 class PHCompositeNode;
21 class TF1;
22 class TH1D;
23 class TH2D;
24 class TTree;
25 
26 class jetrtrack : public SubsysReco
27 {
28  public:
29 
30  jetrtrack(const std::string &name = "jetrtrack");
31 
32  virtual ~jetrtrack();
33 
39  void SetOutputFileName(std::string outfilename)
40  {
41  m_outfilename = outfilename;
42  }
43 
44  int Init(PHCompositeNode *topNode) override;
45 
51  int InitRun(PHCompositeNode *topNode) override;
52 
56  int process_event(PHCompositeNode *topNode) override;
57 
59  int ResetEvent(PHCompositeNode *topNode) override;
60 
62  int EndRun(const int runnumber) override;
63 
65  int End(PHCompositeNode *topNode) override;
66 
68  int Reset(PHCompositeNode * /*topNode*/) override;
69 
70  void Print(const std::string &what = "ALL") const override;
71 
72  private:
73  //---------------------------------------------
74  //define the histogram manager
75  //---------------------------------------------
78 
79  //-------------------------------------------------------------------------------
80  //define some vectors in which we store jet information
81  //-------------------------------------------------------------------------------
82 
83  std::vector<float> m_tjet_pt;
84  std::vector<float> m_tjet_phi;
85  std::vector<float> m_tjet_eta;
86  std::vector<float> m_tjet_jcpt;
87 
88 
89  std::vector<float> m_rjet_pt;
90  std::vector<float> m_rjet_phi;
91  std::vector<float> m_rjet_eta;
92  std::vector<float> m_dr;
93  std::vector<float> m_trk_pt;
94  std::vector<float> m_trk_eta;
95  std::vector<float> m_trk_phi;
96  std::vector<float> m_trk_qual;
97  std::vector<float> m_nmvtxhits;
98 
99  std::vector<float> m_tp_pt;
100  std::vector<float> m_tp_px;
101  std::vector<float> m_tp_py;
102  std::vector<float> m_tp_pz;
103  std::vector<float> m_tp_phi;
104  std::vector<float> m_tp_eta;
105 
106 
107  std::vector<float> m_jc_pt;
108  std::vector<int> m_jc_index;
109  std::vector<float> m_jc_phi;
110  std::vector<float> m_jc_eta;
111 
112 
113  std::vector<int> m_tp_pid;
114 
115  float m_zvtx;
116  /* int m_nmvtxhits; */
120 
121  float m_tjet_pt2;
122 
123 
124 
125  TFile* outfile;
126 
127 };
128 
129 #endif // JETRTRACK_H