File indexing completed on 2026-08-31 08:21:21
0001
0002
0003 #ifndef TPCTRACKRECO_TPCASSEMBLEDTRACKCONTAINERV1_H
0004 #define TPCTRACKRECO_TPCASSEMBLEDTRACKCONTAINERV1_H
0005
0006 #include "Tpc_AssembledTrackContainer.h"
0007
0008 #include <iostream>
0009 #include <vector>
0010
0011 class Tpc_AssembledTrack;
0012
0013 class Tpc_AssembledTrackContainerv1 : public Tpc_AssembledTrackContainer
0014 {
0015 public:
0016 Tpc_AssembledTrackContainerv1();
0017 ~Tpc_AssembledTrackContainerv1() override;
0018
0019 void identify(std::ostream& os = std::cout) const override;
0020 void Reset() override;
0021 int isValid() const override;
0022 PHObject* CloneMe() const override;
0023
0024 unsigned int size() const override
0025 {
0026 return static_cast<unsigned int>(m_tracks.size());
0027 }
0028
0029 void add_track(Tpc_AssembledTrack* trk) override
0030 {
0031 m_tracks.push_back(trk);
0032 }
0033
0034 const Tpc_AssembledTrack* get_track(unsigned int i) const override
0035 {
0036 if (i >= m_tracks.size()) return nullptr;
0037 return m_tracks[i];
0038 }
0039
0040 Tpc_AssembledTrack* get_track(unsigned int i) override
0041 {
0042 if (i >= m_tracks.size()) return nullptr;
0043 return m_tracks[i];
0044 }
0045
0046 private:
0047 std::vector<Tpc_AssembledTrack*> m_tracks;
0048
0049 ClassDefOverride(Tpc_AssembledTrackContainerv1, 1)
0050 };
0051 #endif