EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AnaTutorial.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file AnaTutorial.h
1 #ifndef ANATUTORIAL_H__
2 #define ANATUTORIAL_H__
3 
4 #include <fun4all/SubsysReco.h>
5 
8 class PHCompositeNode;
9 class TFile;
10 class TTree;
11 class TH1;
12 class TH2;
13 class PHCompositeNode;
15 class RawCluster;
16 class SvtxTrackMap;
17 class JetMap;
18 class GlobalVertex;
19 class PHHepMCGenEventMap;
20 class JetEvalStack;
21 class JetRecoEval;
22 class SvtxTrackEval;
24 class PHHepMCGenEvent;
25 class CaloTriggerInfo;
26 class JetTruthEval;
27 class SvtxEvalStack;
28 class JetEvalStack;
29 
31 class AnaTutorial : public SubsysReco
32 {
33  public:
35  AnaTutorial(const std::string &name = "AnaTutorial",
36  const std::string &fname = "AnaTutorial.root");
37 
38  // Destructor
39  virtual ~AnaTutorial();
40 
42  int Init(PHCompositeNode *);
43 
46 
48  int End(PHCompositeNode *);
49 
51  void setMinJetPt(float minjetpt) { m_minjetpt = minjetpt; }
52 
54  void setMinClusPt(float mincluspt) { m_mincluspt = mincluspt; }
55 
61 
62  private:
64  std::string m_outfilename;
65 
68 
70  float m_minjetpt;
71 
73  float m_mincluspt;
74 
77 
80 
83 
86 
88  TFile *m_outfile;
89  TTree *m_clustertree;
90  TTree *m_tracktree;
91  TTree *m_hepmctree;
92  TTree *m_truthtree;
93  TTree *m_recojettree;
95  TH1 *m_phi_h;
97 
100 
102  void getTracks(PHCompositeNode *topNode);
103  void getTruthJets(PHCompositeNode *topNode);
104  void getReconstructedJets(PHCompositeNode *topNode);
105  void getEMCalClusters(PHCompositeNode *topNode);
106  void getHEPMCTruth(PHCompositeNode *topNode);
107  void getPHG4Truth(PHCompositeNode *topNode);
108 
109  void initializeVariables();
110  void initializeTrees();
111 
116 
119  double m_x1;
120  double m_x2;
121  int m_mpi;
124  double m_trutheta;
125  double m_truthphi;
126  double m_truthpx;
127  double m_truthpy;
128  double m_truthpz;
129  double m_truthpt;
130  double m_truthp;
133 
135  double m_tr_px;
136  double m_tr_py;
137  double m_tr_pz;
138  double m_tr_p;
139  double m_tr_pt;
140  double m_tr_phi;
141  double m_tr_eta;
142  int m_charge;
143  double m_chisq;
144  int m_ndf;
145  double m_dca;
146  double m_tr_x;
147  double m_tr_y;
148  double m_tr_z;
159 
161  double m_recojetpt;
163  double m_recojetpx;
164  double m_recojetpy;
165  double m_recojetpz;
166  double m_recojetphi;
167  double m_recojetp;
169  double m_recojeteta;
171  double m_truthjetp;
174  double m_truthjetpt;
176  double m_truthjetpx;
177  double m_truthjetpy;
178  double m_truthjetpz;
179  double m_dR;
180 
182  double m_clusenergy;
183  double m_cluseta;
184  double m_clustheta;
185  double m_cluspt;
186  double m_clusphi;
187  double m_cluspx;
188  double m_cluspy;
189  double m_cluspz;
190  double m_E_4x4;
191 };
192 
193 #endif