24 #include <CLHEP/Vector/ThreeVector.h>
73 std::cout <<
"Fill truth map " << std::endl;
79 std::cout <<
"Fill reco map " << std::endl;
91 std::cout <<
"Truth track map " << std::endl;
93 std::cout << std::endl
94 <<
"Reco track map " << std::endl;
121 for (
auto iter = range.first; iter != range.second; ++iter)
136 const std::set<SvtxTrack *> &alltracks = trackeval->
all_tracks_from(g4particle);
139 if (alltracks.size() == 0)
146 for (
auto track : alltracks)
152 auto iterator = recomap.find(clusCont);
153 if (iterator == recomap.end())
155 std::set<unsigned int> dumset;
156 dumset.insert(track->get_id());
157 recomap.insert(std::make_pair(clusCont, dumset));
161 iterator->second.insert(track->get_id());
167 std::cout <<
" Inserting gtrack id " << gtrackID <<
" with map size " << recomap.size() << std::endl;
178 SvtxTrackMap *trackMap = findNode::getClass<SvtxTrackMap>(topNode,
"SvtxTrackMap");
185 for (
const auto &[key, track] : *trackMap)
192 auto iterator = truthmap.find(clusCont);
193 if (iterator == truthmap.end())
195 std::set<int> dumset;
196 dumset.insert(g4particle->get_track_id());
197 truthmap.insert(std::make_pair(clusCont, dumset));
201 iterator->second.insert(g4particle->get_track_id());
206 std::cout <<
" Inserting track id " << key <<
" with truth map size " << truthmap.size() << std::endl;
222 std::cerr <<
"DST node is missing, quitting" << std::endl;
223 throw std::runtime_error(
"Failed to find DST node in SvtxTruthRecoTableEval::createNodes");
234 m_truthMap = findNode::getClass<PHG4ParticleSvtxMap>(topNode,
"PHG4ParticleSvtxMap");
243 m_recoMap = findNode::getClass<SvtxPHG4ParticleMap>(topNode,
"SvtxPHG4ParticleMap");