24 #include <calobase/RawCluster.h> 
   25 #include <calobase/RawClusterContainer.h> 
   26 #include <calobase/RawClusterUtility.h> 
   27 #include <calobase/RawTower.h> 
   28 #include <calobase/RawTowerContainer.h> 
   29 #include <calobase/RawTowerGeom.h> 
   30 #include <calobase/RawTowerGeomContainer.h> 
   31 #include <calobase/RawTowerv2.h> 
   33 #include <HepMC/GenEvent.h> 
   34 #include <HepMC/GenVertex.h> 
   51 #include <CLHEP/Vector/ThreeVector.h> 
   64   , _do_store_event_info(
false)
 
   72   , _do_PROJECTIONS(
false)
 
   73   , _do_MCPARTICLES(
false)
 
   79   , _n_generator_accepted(0)
 
   90   , _tower_HCALIN_iEta(0)
 
   91   , _tower_HCALIN_iPhi(0)
 
   92   , _tower_HCALIN_trueID(0)
 
   96   , _tower_HCALOUT_iEta(0)
 
   97   , _tower_HCALOUT_iPhi(0)
 
   98   , _tower_HCALOUT_trueID(0)
 
  102   , _tower_CEMC_iEta(0)
 
  103   , _tower_CEMC_iPhi(0)
 
  104   , _tower_CEMC_trueID(0)
 
  106   , _nclusters_HCALIN(0)
 
  107   , _cluster_HCALIN_E(0)
 
  108   , _cluster_HCALIN_Eta(0)
 
  109   , _cluster_HCALIN_Phi(0)
 
  110   , _cluster_HCALIN_NTower(0)
 
  111   , _cluster_HCALIN_trueID(0)
 
  113   , _nclusters_HCALOUT(0)
 
  114   , _cluster_HCALOUT_E(0)
 
  115   , _cluster_HCALOUT_Eta(0)
 
  116   , _cluster_HCALOUT_Phi(0)
 
  117   , _cluster_HCALOUT_NTower(0)
 
  118   , _cluster_HCALOUT_trueID(0)
 
  122   , _cluster_CEMC_Eta(0)
 
  123   , _cluster_CEMC_Phi(0)
 
  124   , _cluster_CEMC_NTower(0)
 
  125   , _cluster_CEMC_trueID(0)
 
  145   , _track_ProjTrackID(0)
 
  146   , _track_ProjLayer(0)
 
  151   , _track_TLP_true_x(0)
 
  152   , _track_TLP_true_y(0)
 
  153   , _track_TLP_true_z(0)
 
  154   , _track_TLP_true_t(0)
 
  158   , _mcpart_ID_parent(0)
 
  184   , _calo_towers_iEta(0)
 
  185   , _calo_towers_iPhi(0)
 
  186   , _calo_towers_Eta(0)
 
  187   , _calo_towers_Phi(0)
 
  193   , _reco_e_threshold(0.0)
 
  194   , _reco_e_threshold_BECAL(0.0)
 
  196   , _caloevalstackHCALIN(nullptr)
 
  197   , _caloevalstackHCALOUT(nullptr)
 
  198   , _caloevalstackCEMC(nullptr)
 
  200   , _event_tree(nullptr)
 
  201   , _geometry_tree(nullptr)
 
  202   , _filename(filename)
 
  204   , _tfile_geometry(nullptr)
 
  300   _event_tree = 
new TTree(
"event_tree", 
"event_tree");
 
  305     _event_tree->Branch(
"cross_section", &
_cross_section, 
"cross_section/F");
 
  306     _event_tree->Branch(
"event_weight", &
_event_weight, 
"event_weight/F");
 
  313     _event_tree->Branch(
"hits_layerID", 
_hits_layerID, 
"hits_layerID[nHits]/I");
 
  314     _event_tree->Branch(
"hits_trueID", 
_hits_trueID, 
"hits_trueID[nHits]/I");
 
  315     _event_tree->Branch(
"hits_x", 
_hits_x, 
"hits_x[nHits]/F");
 
  316     _event_tree->Branch(
"hits_y", 
_hits_y, 
"hits_y[nHits]/F");
 
  317     _event_tree->Branch(
"hits_z", 
_hits_z, 
"hits_z[nHits]/F");
 
  318     _event_tree->Branch(
"hits_t", 
_hits_t, 
"hits_t[nHits]/F");
 
  322     _event_tree->Branch(
"nTracks", &
_nTracks, 
"nTracks/I");
 
  323     _event_tree->Branch(
"tracks_ID", 
_track_ID, 
"tracks_ID[nTracks]/F");
 
  324     _event_tree->Branch(
"tracks_px", 
_track_px, 
"tracks_px[nTracks]/F");
 
  325     _event_tree->Branch(
"tracks_py", 
_track_py, 
"tracks_py[nTracks]/F");
 
  326     _event_tree->Branch(
"tracks_pz", 
_track_pz, 
"tracks_pz[nTracks]/F");
 
  327     _event_tree->Branch(
"tracks_dca", 
_track_dca, 
"tracks_dca[nTracks]/F");
 
  328     _event_tree->Branch(
"tracks_dca_2d", 
_track_dca_2d, 
"tracks_dca_2d[nTracks]/F");
 
  329     _event_tree->Branch(
"tracks_trueID", 
_track_trueID, 
"tracks_trueID[nTracks]/F");
 
  330     _event_tree->Branch(
"tracks_source", 
_track_source, 
"tracks_source[nTracks]/s");
 
  334     _event_tree->Branch(
"nProjections", &
_nProjections, 
"nProjections/I");
 
  335     _event_tree->Branch(
"track_ProjTrackID", 
_track_ProjTrackID, 
"track_ProjTrackID[nProjections]/F");
 
  336     _event_tree->Branch(
"track_ProjLayer", 
_track_ProjLayer, 
"track_ProjLayer[nProjections]/I");
 
  337     _event_tree->Branch(
"track_TLP_x", 
_track_TLP_x, 
"track_TLP_x[nProjections]/F");
 
  338     _event_tree->Branch(
"track_TLP_y", 
_track_TLP_y, 
"track_TLP_y[nProjections]/F");
 
  339     _event_tree->Branch(
"track_TLP_z", 
_track_TLP_z, 
"track_TLP_z[nProjections]/F");
 
  340     _event_tree->Branch(
"track_TLP_t", 
_track_TLP_t, 
"track_TLP_t[nProjections]/F");
 
  341     _event_tree->Branch(
"track_TLP_true_x", 
_track_TLP_true_x, 
"track_TLP_true_x[nProjections]/F");
 
  342     _event_tree->Branch(
"track_TLP_true_y", 
_track_TLP_true_y, 
"track_TLP_true_y[nProjections]/F");
 
  343     _event_tree->Branch(
"track_TLP_true_z", 
_track_TLP_true_z, 
"track_TLP_true_z[nProjections]/F");
 
  344     _event_tree->Branch(
"track_TLP_true_t", 
_track_TLP_true_t, 
"track_TLP_true_t[nProjections]/F");
 
  349     _event_tree->Branch(
"tower_HCALIN_N", &
_nTowers_HCALIN, 
"tower_HCALIN_N/I");
 
  350     _event_tree->Branch(
"tower_HCALIN_E", 
_tower_HCALIN_E, 
"tower_HCALIN_E[tower_HCALIN_N]/F");
 
  351     _event_tree->Branch(
"tower_HCALIN_iEta", 
_tower_HCALIN_iEta, 
"tower_HCALIN_iEta[tower_HCALIN_N]/I");
 
  352     _event_tree->Branch(
"tower_HCALIN_iPhi", 
_tower_HCALIN_iPhi, 
"tower_HCALIN_iPhi[tower_HCALIN_N]/I");
 
  353     _event_tree->Branch(
"tower_HCALIN_trueID", 
_tower_HCALIN_trueID, 
"tower_HCALIN_trueID[tower_HCALIN_N]/I");
 
  357       _event_tree->Branch(
"cluster_HCALIN_N", &
_nclusters_HCALIN, 
"cluster_HCALIN_N/I");
 
  358       _event_tree->Branch(
"cluster_HCALIN_E", 
_cluster_HCALIN_E, 
"cluster_HCALIN_E[cluster_HCALIN_N]/F");
 
  359       _event_tree->Branch(
"cluster_HCALIN_Eta", 
_cluster_HCALIN_Eta, 
"cluster_HCALIN_Eta[cluster_HCALIN_N]/F");
 
  360       _event_tree->Branch(
"cluster_HCALIN_Phi", 
_cluster_HCALIN_Phi, 
"cluster_HCALIN_Phi[cluster_HCALIN_N]/F");
 
  361       _event_tree->Branch(
"cluster_HCALIN_NTower", 
_cluster_HCALIN_NTower, 
"cluster_HCALIN_NTower[cluster_HCALIN_N]/I");
 
  362       _event_tree->Branch(
"cluster_HCALIN_trueID", 
_cluster_HCALIN_trueID, 
"cluster_HCALIN_trueID[cluster_HCALIN_N]/I");
 
  368     _event_tree->Branch(
"tower_HCALOUT_N", &
_nTowers_HCALOUT, 
"tower_HCALOUT_N/I");
 
  369     _event_tree->Branch(
"tower_HCALOUT_E", 
_tower_HCALOUT_E, 
"tower_HCALOUT_E[tower_HCALOUT_N]/F");
 
  370     _event_tree->Branch(
"tower_HCALOUT_iEta", 
_tower_HCALOUT_iEta, 
"tower_HCALOUT_iEta[tower_HCALOUT_N]/I");
 
  371     _event_tree->Branch(
"tower_HCALOUT_iPhi", 
_tower_HCALOUT_iPhi, 
"tower_HCALOUT_iPhi[tower_HCALOUT_N]/I");
 
  372     _event_tree->Branch(
"tower_HCALOUT_trueID", 
_tower_HCALOUT_trueID, 
"tower_HCALOUT_trueID[tower_HCALOUT_N]/I");
 
  377       _event_tree->Branch(
"cluster_HCALOUT_E", 
_cluster_HCALOUT_E, 
"cluster_HCALOUT_E[cluster_HCALOUT_N]/F");
 
  378       _event_tree->Branch(
"cluster_HCALOUT_Eta", 
_cluster_HCALOUT_Eta, 
"cluster_HCALOUT_Eta[cluster_HCALOUT_N]/F");
 
  379       _event_tree->Branch(
"cluster_HCALOUT_Phi", 
_cluster_HCALOUT_Phi, 
"cluster_HCALOUT_Phi[cluster_HCALOUT_N]/F");
 
  380       _event_tree->Branch(
"cluster_HCALOUT_NTower", 
_cluster_HCALOUT_NTower, 
"cluster_HCALOUT_NTower[cluster_HCALOUT_N]/I");
 
  381       _event_tree->Branch(
"cluster_HCALOUT_trueID", 
_cluster_HCALOUT_trueID, 
"cluster_HCALOUT_trueID[cluster_HCALOUT_N]/I");
 
  387     _event_tree->Branch(
"tower_CEMC_N", &
_nTowers_CEMC, 
"tower_CEMC_N/I");
 
  388     _event_tree->Branch(
"tower_CEMC_E", 
_tower_CEMC_E, 
"tower_CEMC_E[tower_CEMC_N]/F");
 
  389     _event_tree->Branch(
"tower_CEMC_iEta", 
_tower_CEMC_iEta, 
"tower_CEMC_iEta[tower_CEMC_N]/I");
 
  390     _event_tree->Branch(
"tower_CEMC_iPhi", 
_tower_CEMC_iPhi, 
"tower_CEMC_iPhi[tower_CEMC_N]/I");
 
  391     _event_tree->Branch(
"tower_CEMC_trueID", 
_tower_CEMC_trueID, 
"tower_CEMC_trueID[tower_CEMC_N]/I");
 
  395       _event_tree->Branch(
"cluster_CEMC_N", &
_nclusters_CEMC, 
"cluster_CEMC_N/I");
 
  396       _event_tree->Branch(
"cluster_CEMC_E", 
_cluster_CEMC_E, 
"cluster_CEMC_E[cluster_CEMC_N]/F");
 
  397       _event_tree->Branch(
"cluster_CEMC_Eta", 
_cluster_CEMC_Eta, 
"cluster_CEMC_Eta[cluster_CEMC_N]/F");
 
  398       _event_tree->Branch(
"cluster_CEMC_Phi", 
_cluster_CEMC_Phi, 
"cluster_CEMC_Phi[cluster_CEMC_N]/F");
 
  399       _event_tree->Branch(
"cluster_CEMC_NTower", 
_cluster_CEMC_NTower, 
"cluster_CEMC_NTower[cluster_CEMC_N]/I");
 
  400       _event_tree->Branch(
"cluster_CEMC_trueID", 
_cluster_CEMC_trueID, 
"cluster_CEMC_trueID[cluster_CEMC_N]/I");
 
  406     _event_tree->Branch(
"vertex_x", &
_vertex_x, 
"vertex_x/F");
 
  407     _event_tree->Branch(
"vertex_y", &
_vertex_y, 
"vertex_y/F");
 
  408     _event_tree->Branch(
"vertex_z", &
_vertex_z, 
"vertex_z/F");
 
  409     _event_tree->Branch(
"vertex_NCont", &
_vertex_NCont, 
"vertex_NCont/I");
 
  410     _event_tree->Branch(
"vertex_true_x", &
_vertex_true_x, 
"vertex_true_x/F");
 
  411     _event_tree->Branch(
"vertex_true_y", &
_vertex_true_y, 
"vertex_true_y/F");
 
  412     _event_tree->Branch(
"vertex_true_z", &
_vertex_true_z, 
"vertex_true_z/F");
 
  417     _event_tree->Branch(
"nMCPart", &
_nMCPart, 
"nMCPart/I");
 
  418     _event_tree->Branch(
"mcpart_ID", 
_mcpart_ID, 
"mcpart_ID[nMCPart]/I");
 
  419     _event_tree->Branch(
"mcpart_ID_parent", 
_mcpart_ID_parent, 
"mcpart_ID_parent[nMCPart]/I");
 
  420     _event_tree->Branch(
"mcpart_PDG", 
_mcpart_PDG, 
"mcpart_PDG[nMCPart]/I");
 
  421     _event_tree->Branch(
"mcpart_E", 
_mcpart_E, 
"mcpart_E[nMCPart]/F");
 
  422     _event_tree->Branch(
"mcpart_px", 
_mcpart_px, 
"mcpart_px[nMCPart]/F");
 
  423     _event_tree->Branch(
"mcpart_py", 
_mcpart_py, 
"mcpart_py[nMCPart]/F");
 
  424     _event_tree->Branch(
"mcpart_pz", 
_mcpart_pz, 
"mcpart_pz[nMCPart]/F");
 
  425     _event_tree->Branch(
"mcpart_BCID", 
_mcpart_BCID, 
"mcpart_BCID[nMCPart]/I");
 
  430     _event_tree->Branch(
"nHepmcp", &
_nHepmcp, 
"nHepmcp/I");
 
  431     _event_tree->Branch(
"hepmcp_procid", &
_hepmcp_procid, 
"hepmcp_procid/I");
 
  432     _event_tree->Branch(
"hepmcp_x1", &
_hepmcp_x1, 
"hepmcp_x1/F");
 
  433     _event_tree->Branch(
"hepmcp_x2", &
_hepmcp_x2, 
"hepmcp_x2/F");
 
  436     _event_tree->Branch(
"hepmcp_status", 
_hepmcp_status, 
"hepmcp_status[nHepmcp]/I");
 
  437     _event_tree->Branch(
"hepmcp_PDG", 
_hepmcp_PDG, 
"hepmcp_PDG[nHepmcp]/I");
 
  438     _event_tree->Branch(
"hepmcp_E", 
_hepmcp_E, 
"hepmcp_E[nHepmcp]/F");
 
  439     _event_tree->Branch(
"hepmcp_px", 
_hepmcp_px, 
"hepmcp_px[nHepmcp]/F");
 
  440     _event_tree->Branch(
"hepmcp_py", 
_hepmcp_py, 
"hepmcp_py[nHepmcp]/F");
 
  441     _event_tree->Branch(
"hepmcp_pz", 
_hepmcp_pz, 
"hepmcp_pz[nHepmcp]/F");
 
  442     _event_tree->Branch(
"hepmcp_BCID", 
_hepmcp_BCID, 
"hepmcp_BCID[nHepmcp]/I");
 
  443     _event_tree->Branch(
"hepmcp_m1", 
_hepmcp_m1, 
"hepmcp_m1[nHepmcp]/I");
 
  444     _event_tree->Branch(
"hepmcp_m2", 
_hepmcp_m2, 
"hepmcp_m2[nHepmcp]/I");
 
  471     cout << 
"entered process_event" << endl;
 
  515     cout << 
"loaded evalstack" << endl;
 
  530     cout << 
"EventEvaluator::fillOutputNtuples() entered" << endl;
 
  542     PHHepMCGenEventMap* hepmceventmap = findNode::getClass<PHHepMCGenEventMap>(topNode, 
"PHHepMCGenEventMap");
 
  547         cout << 
"saving event level info" << endl;
 
  551            eventIter != hepmceventmap->
end();
 
  558           HepMC::GenEvent* truthevent = hepmcevent->
getEvent();
 
  562                  << 
"no evt pointer under phhepmvgeneventmap found " 
  567           auto xsec = truthevent->cross_section();
 
  574           auto weights = truthevent->weights();
 
  575           if (weights.size() > 0) {
 
  585         cout << 
PHWHERE << 
" PHHepMCGenEventMap node (for event level info) not found on node tree" << endl;
 
  596       cout << 
PHWHERE << 
"RUN Node missing doing nothing" << endl;
 
  599     auto * integralNode = findNode::getClass<PHGenIntegral>(sumNode, 
"PHGenIntegral");
 
  608         cout << 
PHWHERE << 
" PHGenIntegral node (for n generator accepted) not found on node tree. Continuing" << endl;
 
  615   SvtxVertexMap* vertexmap = findNode::getClass<SvtxVertexMap>(topNode, 
"SvtxVertexMap");
 
  620       if (!vertexmap->
empty())
 
  624           cout << 
"saving vertex" << endl;
 
  647       cout << 
"saving hits" << endl;
 
  650     PHG4TruthInfoContainer* truthinfocontainerHits = findNode::getClass<PHG4TruthInfoContainer>(topNode, 
"G4TruthInfo");
 
  651     for (
int iIndex = 0; iIndex < 60; ++iIndex)
 
  659         PHG4HitContainer* hits = findNode::getClass<PHG4HitContainer>(topNode, nodename);
 
  664             cout << __PRETTY_FUNCTION__ << 
" number of hits: " << hits->
size() << endl;
 
  671               cout << __PRETTY_FUNCTION__ << 
" found hit with id " << hit_iter->second->get_trkid() << endl;
 
  674               cout << __PRETTY_FUNCTION__ << 
" exceededed maximum hit array size! Please check where these hits come from!" << endl;
 
  682             if (truthinfocontainerHits)
 
  693                   if (g4particleMother == NULL) 
break;
 
  707                     if (g4particleMother2 == NULL){
 
  733             cout << __PRETTY_FUNCTION__ << 
" could not find " << nodename << endl;
 
  747     string towernodeHCALIN = 
"TOWER_CALIB_HCALIN";
 
  748     RawTowerContainer* towersHCALIN = findNode::getClass<RawTowerContainer>(topNode, towernodeHCALIN.c_str());
 
  753         cout << 
"saving HCAL towers" << endl;
 
  755       string towergeomnodeHCALIN = 
"TOWERGEOM_HCALIN";
 
  756       RawTowerGeomContainer* towergeomHCALIN = findNode::getClass<RawTowerGeomContainer>(topNode, towergeomnodeHCALIN.c_str());
 
  762               it != all_towers.second; ++
it)
 
  780         for (rtiter = begin_end.first; rtiter != begin_end.second; ++rtiter)
 
  810           cout << 
PHWHERE << 
" ERROR: Can't find " << towergeomnodeHCALIN << endl;
 
  823         cout << 
PHWHERE << 
" ERROR: Can't find " << towernodeHCALIN << endl;
 
  835     string towernodeHCALOUT = 
"TOWER_CALIB_HCALOUT";
 
  836     RawTowerContainer* towersHCALOUT = findNode::getClass<RawTowerContainer>(topNode, towernodeHCALOUT.c_str());
 
  841         cout << 
"saving HCAL towers" << endl;
 
  843       string towergeomnodeHCALOUT = 
"TOWERGEOM_HCALOUT";
 
  844       RawTowerGeomContainer* towergeomHCALOUT = findNode::getClass<RawTowerGeomContainer>(topNode, towergeomnodeHCALOUT.c_str());
 
  845       if (towergeomHCALOUT)
 
  850               it != all_towers.second; ++
it)
 
  868         for (rtiter = begin_end.first; rtiter != begin_end.second; ++rtiter)
 
  898           cout << 
PHWHERE << 
" ERROR: Can't find " << towergeomnodeHCALOUT << endl;
 
  911         cout << 
PHWHERE << 
" ERROR: Can't find " << towernodeHCALOUT << endl;
 
  923     string towernodeCEMC = 
"TOWER_CALIB_CEMC";
 
  924     RawTowerContainer* towersCEMC = findNode::getClass<RawTowerContainer>(topNode, towernodeCEMC.c_str());
 
  929         cout << 
"saving EMC towers" << endl;
 
  931       string towergeomnodeCEMC = 
"TOWERGEOM_CEMC";
 
  932       RawTowerGeomContainer* towergeom = findNode::getClass<RawTowerGeomContainer>(topNode, towergeomnodeCEMC.c_str());
 
  938               it != all_towers.second; ++
it)
 
  956         for (rtiter = begin_end.first; rtiter != begin_end.second; ++rtiter)
 
  987           cout << 
PHWHERE << 
" ERROR: Can't find " << towergeomnodeCEMC << endl;
 
  993         cout << 
"saved\t" << 
_nTowers_CEMC << 
"\tCEMC towers" << endl;
 
 1000         cout << 
PHWHERE << 
" ERROR: Can't find " << towernodeCEMC << endl;
 
 1015       cout << 
"CaloEvaluator::filling gcluster ntuple..." << endl;
 
 1018     string clusternodeHCALIN = 
"CLUSTER_HCALIN";
 
 1019     RawClusterContainer* clustersHCALIN = findNode::getClass<RawClusterContainer>(topNode, clusternodeHCALIN.c_str());
 
 1036           if (!vertexmap->
empty())
 
 1063       cerr << 
PHWHERE << 
" ERROR: Can't find " << clusternodeHCALIN << endl;
 
 1077       cout << 
"CaloEvaluator::filling gcluster ntuple..." << endl;
 
 1080     string clusternodeHCALOUT = 
"CLUSTER_HCALOUT";
 
 1081     RawClusterContainer* clustersHCALOUT = findNode::getClass<RawClusterContainer>(topNode, clusternodeHCALOUT.c_str());
 
 1082     if (clustersHCALOUT)
 
 1098           if (!vertexmap->
empty())
 
 1125       cerr << 
PHWHERE << 
" ERROR: Can't find " << clusternodeHCALOUT << endl;
 
 1139       cout << 
"CaloEvaluator::filling gcluster ntuple..." << endl;
 
 1142     string clusternodeCEMC = 
"CLUSTER_CEMC";
 
 1143     RawClusterContainer* clustersCEMC = findNode::getClass<RawClusterContainer>(topNode, clusternodeCEMC.c_str());
 
 1160           if (!vertexmap->
empty())
 
 1187       cerr << 
PHWHERE << 
" ERROR: Can't find " << clusternodeCEMC << endl;
 
 1203     std::vector<std::pair<std::string, TrackSource_t>> trackMapInfo = {
 
 1204         {
"TrackMap", TrackSource_t::all},
 
 1205         {
"TrackMapInner", TrackSource_t::inner}};
 
 1206     bool foundAtLeastOneTrackSource = 
false;
 
 1207     for (
const auto& trackMapInfo : trackMapInfo)
 
 1209       SvtxTrackMap* trackmap = findNode::getClass<SvtxTrackMap>(topNode, trackMapInfo.first);
 
 1212         foundAtLeastOneTrackSource = 
true;
 
 1213         int nTracksInASource = 0;
 
 1216           cout << 
"saving tracks for track map: " << trackMapInfo.first << endl;
 
 1242                   cout << __PRETTY_FUNCTION__ << 
" processing " << trkstates->second->get_name() << endl;
 
 1244                 string trackStateName = trkstates->second->get_name();
 
 1247                   cout << __PRETTY_FUNCTION__ << 
" found " << trkstates->second->get_name() << endl;
 
 1250                 if (trackStateIndex > -1)
 
 1260                   string nodename = 
"G4HIT_" + trkstates->second->get_name();
 
 1261                   PHG4HitContainer* hits = findNode::getClass<PHG4HitContainer>(topNode, nodename);
 
 1266                       cout << __PRETTY_FUNCTION__ << 
" number of hits: " << hits->
size() << endl;
 
 1273                         cout << __PRETTY_FUNCTION__ << 
" checking hit id " << hit_iter->second->get_trkid() << 
" against " << track->
get_truth_track_id() << endl;
 
 1279                           cout << __PRETTY_FUNCTION__ << 
" found hit with id " << hit_iter->second->get_trkid() << endl;
 
 1293                       cout << __PRETTY_FUNCTION__ << 
" could not find " << nodename << endl;
 
 1308               cout << 
"PHG4TrackFastSimEval::fill_track_tree - ignore track that is not a SvtxTrack_FastSim:";
 
 1309               track_itr->second->identify();
 
 1316           cout << 
"saved\t" << nTracksInASource << 
"\ttracks from track map " << trackMapInfo.first << 
". Total saved tracks: " << 
_nTracks << endl;
 
 1323           cout << 
PHWHERE << 
"SvtxTrackMap node with name '" << trackMapInfo.first << 
"' not found on node tree" << endl;
 
 1327     if (foundAtLeastOneTrackSource == 
false) {
 
 1328       cout << 
PHWHERE << 
"Requested tracks, but found no sources on node tree. Returning" << endl;
 
 1338     PHG4TruthInfoContainer* truthinfocontainer = findNode::getClass<PHG4TruthInfoContainer>(topNode, 
"G4TruthInfo");
 
 1339     if (truthinfocontainer)
 
 1343         cout << 
"saving MC particles" << endl;
 
 1351         if (!g4particle) 
continue;
 
 1360             if (g4particleMother == NULL) 
break;
 
 1401         cout << 
"saved\t" << 
_nMCPart << 
"\tMC particles" << endl;
 
 1408         cout << 
PHWHERE << 
" PHG4TruthInfoContainer node not found on node tree" << endl;
 
 1420     PHHepMCGenEventMap* hepmceventmap = findNode::getClass<PHHepMCGenEventMap>(topNode, 
"PHHepMCGenEventMap");
 
 1425         cout << 
"saving HepMC output" << endl;
 
 1429         hepmceventmap->Print();
 
 1433            eventIter != hepmceventmap->
end();
 
 1440           HepMC::GenEvent* truthevent = hepmcevent->
getEvent();
 
 1444                  << 
"no evt pointer under phhepmvgeneventmap found " 
 1449           HepMC::PdfInfo* pdfinfo = truthevent->pdf_info();
 
 1462             cout << 
" Iterating over an event" << endl;
 
 1464           for (HepMC::GenEvent::particle_const_iterator iter = truthevent->particles_begin();
 
 1465                iter != truthevent->particles_end();
 
 1477             if ((*iter)->production_vertex())
 
 1479               for (HepMC::GenVertex::particle_iterator mother = (*iter)->production_vertex()->particles_begin(HepMC::parents);
 
 1480                    mother != (*iter)->production_vertex()->particles_end(HepMC::parents);
 
 1498         cout << 
PHWHERE << 
" PHHepMCGenEventMap node not found on node tree" << endl;
 
 1506   if (
Verbosity() > 0){ cout << 
"Resetting buffer ..." << endl;}
 
 1510     cout << 
"EventEvaluator buffer reset" << endl;
 
 1536     cout << 
"========================= " << 
Name() << 
"::End() ============================" << endl;
 
 1537     cout << 
" " << 
_ievent << 
" events of output written to: " << 
_filename << endl;
 
 1538     cout << 
"===========================================================================" << endl;
 
 1550   if (projname.find(
"HCALIN") != std::string::npos)
 
 1552   else if (projname.find(
"HCALOUT") != std::string::npos)
 
 1554   else if (projname.find(
"CEMC") != std::string::npos)
 
 1598     if (
Verbosity() > 0){ cout << 
"\t... event info variables reset" << endl;}
 
 1609     if (
Verbosity() > 0){ cout << 
"\t... vertex variables reset" << endl;}
 
 1623     if (
Verbosity() > 0){ cout << 
"\t... hit variables reset" << endl;}
 
 1645     if (
Verbosity() > 0){ cout << 
"\t... CEMC variables reset" << endl;}
 
 1667     if (
Verbosity() > 0){ cout << 
"\t... HCALIN variables reset" << endl;}
 
 1670     if (
Verbosity() > 0){ cout << 
"\t... resetting HCALOUT variables" << endl;}
 
 1690     if (
Verbosity() > 0){ cout << 
"\t... HCALOUT variables reset" << endl;}
 
 1694     if (
Verbosity() > 0){ cout << 
"\t... resetting Track variables" << endl;}
 
 1724     if (
Verbosity() > 0){ cout << 
"\t... track variables reset" << endl;}
 
 1729     for (Int_t imcpart = 0; imcpart < 
_maxNMCPart; imcpart++)
 
 1745     for (Int_t iHepmcp = 0; iHepmcp < 
_maxNHepmcp; iHepmcp++)
 
 1757     if (
Verbosity() > 0){ cout << 
"\t... MC variables reset" << endl;}