File indexing completed on 2025-08-05 08:17:02
0001 #ifndef TRACKBASE_TRKRCLUSTERCONTAINERV4_H
0002 #define TRACKBASE_TRKRCLUSTERCONTAINERV4_H
0003
0004
0005
0006
0007
0008
0009
0010
0011 #include "TrkrClusterContainer.h"
0012
0013 #include <phool/PHObject.h>
0014
0015 class TrkrCluster;
0016
0017
0018
0019
0020 class TrkrClusterContainerv4 : public TrkrClusterContainer
0021 {
0022 public:
0023 TrkrClusterContainerv4() = default;
0024
0025
0026
0027
0028
0029 void Reset() override;
0030
0031 void identify(std::ostream& os = std::cout) const override;
0032
0033 void addClusterSpecifyKey(const TrkrDefs::cluskey, TrkrCluster*) override;
0034
0035
0036 void removeCluster(TrkrDefs::cluskey) override;
0037
0038
0039 void removeClusters(TrkrDefs::hitsetkey) override;
0040
0041 ConstRange getClusters() const override;
0042
0043 ConstRange getClusters(TrkrDefs::hitsetkey) override;
0044
0045 TrkrCluster* findCluster(TrkrDefs::cluskey) const override;
0046
0047 HitSetKeyList getHitSetKeys() const override;
0048
0049 HitSetKeyList getHitSetKeys(const TrkrDefs::TrkrId) const override;
0050
0051 HitSetKeyList getHitSetKeys(const TrkrDefs::TrkrId, const uint8_t ) const override;
0052
0053 unsigned int size(void) const override;
0054
0055 private:
0056
0057 using Vector = std::vector<TrkrCluster*>;
0058
0059
0060 std::map<TrkrDefs::hitsetkey, Vector> m_clusmap;
0061
0062
0063
0064
0065
0066
0067
0068 Map m_tmpmap;
0069
0070 ClassDefOverride(TrkrClusterContainerv4, 1)
0071 };
0072
0073 #endif