Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DISKinematicsReco.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file DISKinematicsReco.h
1 #ifndef __DISKinematicsReco_H__
2 #define __DISKinematicsReco_H__
3 
4 #include "PidCandidate.h"
6 /* Fun4All includes */
7 #include <fun4all/SubsysReco.h>
8 #include <calobase/RawTowerDefs.h>
9 
10 /* STL includes */
11 #include <math.h>
12 #include <map>
13 
14 /*HepMC include */
17 #include <HepMC/GenEvent.h>
18 class TTree;
19 class TFile;
20 
21 class PHCompositeNode;
22 class CaloEvalStack;
23 class CaloRawTowerEval;
24 class RawCluster;
25 class RawTowerContainer;
27 //class JetMap;
28 class SvtxTrack;
29 class SvtxTrackMap;
30 class PHHepMCGenEventMap;
31 
32 
34 
35 typedef std::map<float, PidCandidate*> type_map_tcan;
36 typedef std::map< RawTowerDefs::CalorimeterId , std::pair< RawTowerContainer*, RawTowerGeomContainer* > > type_map_cdata;
37 
39 {
40 
41 public:
42 
44 
45  int
47  int
49  int
51  int
53 
54  void
55  set_beam_energies( float beam_electron , float beam_proton )
56  {
57  _beam_electron_ptotal = fabs( beam_electron );
58  _beam_hadron_ptotal = fabs( beam_proton );
59  }
60 
61  void
63  {
65  }
66 
67  void
68  set_do_process_truth( bool select )
69  {
70  _do_process_truth = select;
71  }
72 
73 
74 private:
75 
76  /* proton rest mass */
77  const float _mproton;
78 
79  bool _verbose;
84 
85  int _ievent;
87 
89  TFile *_tfile;
90 
91  /* output tree and variables */
93 
94  /* output tree and variables from TRUTH particles */
96 
97  /* beam energies electron and proton */
100 
103  std::map< std::string, CaloRawTowerEval* > _map_towereval;
104 
105  /* Track Projector object */
107  // /** Map of PidCandidate properties that will be written to
108  // * output ROOT Tree */
109  // std::map< PidCandidate::PROPERTY , float > _map_treebranches;
110 
113  std::map< PidCandidate::PROPERTY , std::vector< float > > _map_em_candidate_branches;
114 
117  std::map< std::string , float > _map_event_branches;
118 
121 
123 
125 
127 
129 
131 
133 
135 
137  PidCandidate* FindMinDeltaRCandidate( type_map_tcan*, const float, const float );
138 
140  float CalculateDeltaR( float, float, float, float );
141 
143  void ResetBranchMap();
144 
145 
146 };
147 
148 #endif // __DISKinematicsReco_H__