ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TrkrClusterContainerv1.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file TrkrClusterContainerv1.h
1 
7 #ifndef TRACKBASE_TRKRCLUSTERCONTAINERV1_H
8 #define TRACKBASE_TRKRCLUSTERCONTAINERV1_H
9 
10 #include "TrkrClusterContainer.h"
11 #include "TrkrDefs.h"
12 
13 #include <phool/PHObject.h>
14 
15 #include <map>
16 #include <iostream> // for cout, ostream
17 #include <utility> // for pair
18 
19 class TrkrCluster;
20 
27 {
28  public:
29  typedef std::map<TrkrDefs::cluskey, TrkrCluster *> Map;
30  typedef Map::iterator Iterator;
31  typedef Map::const_iterator ConstIterator;
32  typedef std::pair<Iterator, Iterator> Range;
33  typedef std::pair<ConstIterator, ConstIterator> ConstRange;
34 
35  TrkrClusterContainerv1() = default;
36 
37  void Reset() override;
38 
39  void identify(std::ostream &os = std::cout) const override;
40 
41  ConstIterator addCluster(TrkrCluster *newClus) override;
42 
44 
45  void removeCluster(TrkrDefs::cluskey) override;
46 
47  void removeCluster(TrkrCluster*) override;
48 
50 
51  ConstRange getClusters() const override;
52 
53  TrkrCluster *findCluster(TrkrDefs::cluskey key) const override;
54 
55  unsigned int size() const override;
56 
57  private:
59  ClassDefOverride(TrkrClusterContainerv1, 1)
60 };
61 
62 #endif //TRACKBASE_TRKRCLUSTERCONTAINER_H