Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2026-08-31 08:21:23

0001 #include "Tpc_PolyTrackContainerv1.h"
0002 #include "Tpc_PolyTrack.h"
0003 
0004 Tpc_PolyTrackContainerv1::Tpc_PolyTrackContainerv1()
0005 {
0006   Reset();
0007 }
0008 
0009 Tpc_PolyTrackContainerv1::~Tpc_PolyTrackContainerv1()
0010 {
0011   Reset();
0012 }
0013 
0014 void Tpc_PolyTrackContainerv1::identify(std::ostream& os) const
0015 {
0016   os << "Tpc_PolyTrackContainerv1 with " << m_tracks.size() << " tracks" << std::endl;
0017 }
0018 
0019 void Tpc_PolyTrackContainerv1::Reset()
0020 {
0021   for (auto& m_track : m_tracks)
0022   {
0023     delete m_track;
0024   }
0025   m_tracks.clear();
0026 }
0027 
0028 int Tpc_PolyTrackContainerv1::isValid() const
0029 {
0030   return m_tracks.empty() ? 0 : 1;
0031 }
0032 
0033 PHObject* Tpc_PolyTrackContainerv1::CloneMe() const
0034 {
0035   Tpc_PolyTrackContainerv1* copy = new Tpc_PolyTrackContainerv1();
0036   for (auto* m_track : m_tracks)
0037   {
0038     if (m_track)
0039     {
0040       copy->m_tracks.push_back(static_cast<Tpc_PolyTrack*>(m_track->CloneMe()));
0041     }
0042   }
0043   return copy;
0044 }