EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4TruthEventAction.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHG4TruthEventAction.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef G4MAIN_PHG4TRUTHEVENTACTION_H
4 #define G4MAIN_PHG4TRUTHEVENTACTION_H
5 
6 #include "PHG4EventAction.h"
7 
8 #include <map>
9 #include <set>
10 
11 class G4Event;
12 class PHG4HitContainer;
14 class PHCompositeNode;
15 
17 {
18  public:
21 
23  ~PHG4TruthEventAction() override {}
24 
25  void BeginOfEventAction(const G4Event*) override;
26 
27  void EndOfEventAction(const G4Event*) override;
28 
29  int ResetEvent(PHCompositeNode*) override;
30 
32  void SetInterfacePointers(PHCompositeNode*) override;
33 
35  void AddTrackidToWritelist(const int trackid);
36 
37  private:
38  void SearchNode(PHCompositeNode* topNode);
39  void PruneShowers();
40  void ProcessShowers();
41 
43  std::set<int> m_WriteSet;
44 
47 
50 
51  std::map<int, PHG4HitContainer*> m_HitContainerMap;
52 };
53 
54 #endif