Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:17:47

0001 #include "TrackJetInput.h"
0002 
0003 #include "Jet.h"
0004 #include "Jetv2.h"
0005 
0006 #include <trackbase_historic/SvtxTrack.h>
0007 #include <trackbase_historic/SvtxTrackMap.h>
0008 
0009 #include <phool/getClass.h>
0010 
0011 // standard includes
0012 #include <iostream>
0013 #include <map>      // for _Rb_tree_const_iterator
0014 #include <utility>  // for pair
0015 #include <vector>
0016 
0017 TrackJetInput::TrackJetInput(Jet::SRC input, const std::string &nodename)
0018   : m_NodeName(nodename)
0019   , _input(input)
0020 {
0021 }
0022 
0023 void TrackJetInput::identify(std::ostream &os)
0024 {
0025   os << "   TrackJetInput: SvtxTrackMap to Jet::TRACK" << std::endl;
0026 }
0027 
0028 std::vector<Jet *> TrackJetInput::get_input(PHCompositeNode *topNode)
0029 {
0030   if (Verbosity() > 0)
0031   {
0032     std::cout << "TrackJetInput::process_event -- entered" << std::endl;
0033   }
0034 
0035   // Pull the reconstructed track information off the node tree...
0036 
0037   SvtxTrackMap *trackmap = findNode::getClass<SvtxTrackMap>(topNode, m_NodeName);
0038   if (!trackmap)
0039   {
0040     return std::vector<Jet *>();
0041   }
0042 
0043   std::vector<Jet *> pseudojets;
0044   for (SvtxTrackMap::ConstIter iter = trackmap->begin();
0045        iter != trackmap->end();
0046        ++iter)
0047   {
0048     const SvtxTrack *track = iter->second;
0049 
0050     Jet *jet = new Jetv2();
0051     jet->set_px(track->get_px());
0052     jet->set_py(track->get_py());
0053     jet->set_pz(track->get_pz());
0054     jet->set_e(track->get_p());
0055     jet->insert_comp(Jet::TRACK, track->get_id());
0056     pseudojets.push_back(jet);
0057   }
0058 
0059   if (Verbosity() > 0)
0060   {
0061     std::cout << "TrackJetInput::process_event -- exited" << std::endl;
0062   }
0063 
0064   return pseudojets;
0065 }