15 #include <calobase/RawCluster.h>
16 #include <calobase/RawClusterContainer.h>
17 #include <calobase/RawTower.h>
18 #include <calobase/RawTowerContainer.h>
19 #include <calobase/RawTowerGeom.h>
20 #include <calobase/RawTowerGeomContainer.h>
47 std::cout <<
"Detector not set via Detector(<name>) method" << std::endl;
48 std::cout <<
"(it is the name appended to the G4HIT_<name> nodename)" << std::endl;
49 std::cout <<
"you do not want to run like this, exiting now" << std::endl;
75 evaltree->set_gvx(gvertex->get_x());
76 evaltree->set_gvy(gvertex->get_y());
77 evaltree->set_gvz(gvertex->get_z());
86 double gpx = primary->
get_px();
87 double gpy = primary->
get_py();
88 double gpz = primary->
get_pz();
89 double gpt = std::sqrt(gpx * gpx + gpy * gpy);
90 double gmom = std::sqrt(gpx * gpx + gpy * gpy + gpz * gpz);
92 evaltree->set_gpx(gpx);
93 evaltree->set_gpy(gpy);
94 evaltree->set_gpz(gpz);
95 evaltree->set_ge(primary->
get_e());
96 evaltree->set_gpid(primary->
get_pid());
100 geta = asinh(gpz / gpt);
102 evaltree->set_geta(geta);
103 evaltree->set_gphi(atan2(gpy, gpx));
104 evaltree->set_gtheta(acos(gpz / gmom));
108 std::cout <<
"this only works for single particle events"
109 <<
" here I see " << justone <<
" primaries" << std::endl;
119 evaltree->set_nhits(g4hits->
size());
123 evaltree->AddHit(hit_iter->second);
124 esum += hit_iter->second->get_edep();
126 evaltree->set_hesum(esum);
136 evaltree->set_ntowers(g4towers->size());
141 EvalTower *evaltwr = evaltree->AddTower(twr);
151 evaltree->set_tesum(esum);
158 evaltree->set_nclusters(clusters->
size());
162 evaltree->AddCluster(cluster);
165 evaltree->set_cesum(esum);
198 std::cout <<
"EvalRootTTreeReco::Print(const std::string &what) const Printing info for " << what << std::endl;