File indexing completed on 2025-08-06 08:18:12
0001 #ifndef TRACKBASE_TrkrHitSetContainerv1_H
0002 #define TRACKBASE_TrkrHitSetContainerv1_H
0003
0004
0005
0006
0007
0008
0009 #include "TrkrDefs.h"
0010 #include "TrkrHitSetContainer.h"
0011
0012 #include <iostream> // for cout, ostream
0013 #include <map>
0014 #include <utility> // for pair
0015
0016 class TrkrHitSet;
0017
0018
0019
0020
0021 class TrkrHitSetContainerv1 : public TrkrHitSetContainer
0022 {
0023 public:
0024 TrkrHitSetContainerv1() = default;
0025
0026 ~TrkrHitSetContainerv1() override
0027 {
0028 TrkrHitSetContainerv1::Reset();
0029 }
0030
0031 void Reset() override;
0032
0033 void identify(std::ostream& = std::cout) const override;
0034
0035 ConstIterator addHitSet(TrkrHitSet*) override;
0036
0037 ConstIterator addHitSetSpecifyKey(const TrkrDefs::hitsetkey, TrkrHitSet*) override;
0038
0039 void removeHitSet(TrkrDefs::hitsetkey) override;
0040
0041 void removeHitSet(TrkrHitSet*) override;
0042
0043 Iterator findOrAddHitSet(TrkrDefs::hitsetkey key) override;
0044
0045 ConstRange getHitSets(const TrkrDefs::TrkrId trackerid) const override;
0046
0047 ConstRange getHitSets(const TrkrDefs::TrkrId trackerid, const uint8_t layer) const override;
0048
0049 ConstRange getHitSets() const override;
0050
0051 TrkrHitSet* findHitSet(TrkrDefs::hitsetkey key) override;
0052
0053 unsigned int size() const override
0054 {
0055 return m_hitmap.size();
0056 }
0057
0058 private:
0059 Map m_hitmap;
0060
0061 ClassDefOverride(TrkrHitSetContainerv1, 1)
0062 };
0063
0064 #endif