Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:18:10

0001 #ifndef TRACKBASE_RawHitSetContainerv1_H
0002 #define TRACKBASE_RawHitSetContainerv1_H
0003 /**
0004  * @file trackbase/RawHitSetContainerv1.h
0005  * @author D. McGlinchey, H. PEREIRA DA COSTA
0006  * @date June 2018
0007  */
0008 
0009 #include "RawHitSetContainer.h"
0010 #include "TrkrDefs.h"
0011 
0012 #include <iostream>  // for cout, ostream
0013 #include <map>
0014 #include <utility>  // for pair
0015 
0016 class RawHitSet;
0017 
0018 /**
0019  * Container for RawHitSet objects
0020  */
0021 class RawHitSetContainerv1 : public RawHitSetContainer
0022 {
0023  public:
0024   RawHitSetContainerv1() = default;
0025 
0026   ~RawHitSetContainerv1() override
0027   {
0028     RawHitSetContainerv1::Reset();
0029   }
0030 
0031   void Reset() override;
0032 
0033   void identify(std::ostream& = std::cout) const override;
0034 
0035   ConstIterator addHitSet(RawHitSet*) override;
0036 
0037   ConstIterator addHitSetSpecifyKey(const TrkrDefs::hitsetkey, RawHitSet*) override;
0038 
0039   void removeHitSet(TrkrDefs::hitsetkey) override;
0040 
0041   void removeHitSet(RawHitSet*) 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   RawHitSet* 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(RawHitSetContainerv1, 1)
0062 };
0063 
0064 #endif  // TRACKBASE_RawHitSetContainerv1_H