EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ParticleFlowElementContainer.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file ParticleFlowElementContainer.h
1 #ifndef PARTICLEFLOW_PARTICLEFLOWELEMENTCONTAINER_H
2 #define PARTICLEFLOW_PARTICLEFLOWELEMENTCONTAINER_H
3 
4 //===========================================================
8 //===========================================================
9 
10 #include <phool/PHObject.h>
11 
12 #include <iostream>
13 #include <map>
14 
16 
18 {
19  public:
20  typedef std::map<int, ParticleFlowElement *> Map;
21  typedef Map::iterator Iterator;
22  typedef Map::const_iterator ConstIterator;
23  typedef std::pair<Iterator, Iterator> Range;
24  typedef std::pair<ConstIterator, ConstIterator> ConstRange;
25 
27  {
28 
29  }
30 
32 
33  void Reset() override;
34  int isValid() const override;
35  void identify(std::ostream &os = std::cout) const override;
36 
37  void AddParticleFlowElement(int index, ParticleFlowElement *pflowElement);
39  const ParticleFlowElement *getParticleFlowElement(int index) const;
40 
44 
45  unsigned int size() const { return _pflowElementMap.size(); }
46 
47  protected:
49 
50  ClassDefOverride(ParticleFlowElementContainer, 1)
51 };
52 
53 #endif