Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DecayFinderContainer_v1.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file DecayFinderContainer_v1.h
1 #ifndef DECAYFINDER_DECAYFINDERCONTAINERV1_H
2 #define DECAYFINDER_DECAYFINDERCONTAINERV1_H
3 
5 
6 #include <cstddef> // for size_t
7 #include <iostream> // for cout, ostream
8 
15 class PHObject;
16 
18 {
19  public:
21  DecayFinderContainer_v1(const DecayFinderContainer_v1& decayfindermap);
23  ~DecayFinderContainer_v1() override;
24 
25  void identify(std::ostream& os = std::cout) const override;
26  // cppcheck-suppress virtualCallInConstructor
27  void Reset() override;
28  int isValid() const override { return 1; }
29  PHObject* CloneMe() const override { return new DecayFinderContainerBase(*this); }
30 
31  bool empty() const override { return m_decaymap.empty(); }
32  size_t size() const override { return m_decaymap.size(); }
33  size_t count(unsigned int key) const override { return m_decaymap.count(key); }
34  void clear() override { Reset(); }
35 
36  const Decay get(unsigned int key) const override;
37  Decay get(unsigned int key) override;
38 
39  ConstIter begin() const override { return m_decaymap.begin(); }
40  ConstIter find(unsigned int key) const override { return m_decaymap.find(key); }
41  ConstIter end() const override { return m_decaymap.end(); }
42 
43  Iter begin() override { return m_decaymap.begin(); }
44  Iter find(unsigned int key) override { return m_decaymap.find(key); }
45  Iter end() override { return m_decaymap.end(); }
46 
47  Decay insert(const Decay& decay) override;
48 
49  // Use the PDG MC ID to return a subset of the DecayFinder container, if those particle exist in the container
50  Map returnDecaysByPDGid(int PDGid) override;
51 
52  size_t erase(unsigned int key) override;
53 
54  private:
56 
58 };
59 
60 #endif // DECAYFINDER_DECAYFINDERCONTAINERV1_H