File indexing completed on 2026-08-31 08:21:24
0001 #ifndef TPCTRACKRECO_TPCCROSSINGDECISIONCONTAINERV1_H
0002 #define TPCTRACKRECO_TPCCROSSINGDECISIONCONTAINERV1_H
0003
0004
0005 #include "TpcCrossingDecisionContainer.h"
0006
0007 #include <iostream>
0008 #include <map>
0009
0010 class TpcCrossingDecision;
0011
0012 class TpcCrossingDecisionContainerv1 : public TpcCrossingDecisionContainer
0013 {
0014 public:
0015 TpcCrossingDecisionContainerv1();
0016 ~TpcCrossingDecisionContainerv1() override;
0017
0018 void identify(std::ostream& os = std::cout) const override;
0019 void Reset() override;
0020 int isValid() const override;
0021 PHObject* CloneMe() const override;
0022
0023 unsigned int size() const override { return static_cast<unsigned int>(m_decisions.size()); }
0024 void add_decision(TpcCrossingDecision* decision) override;
0025 TpcCrossingDecision* get_decision(unsigned int assembled_track_id) override;
0026 const TpcCrossingDecision* get_decision(unsigned int assembled_track_id) const override;
0027
0028 private:
0029 std::map<unsigned int, TpcCrossingDecision*> m_decisions;
0030
0031 ClassDefOverride(TpcCrossingDecisionContainerv1, 1)
0032 };
0033
0034 #endif