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 }