EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4StackingAction.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHG4StackingAction.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 #ifndef G4MAIN_PHG4STACKINGACTION_H
4 #define G4MAIN_PHG4STACKINGACTION_H
5 
6 #include <Geant4/G4UserStackingAction.hh>
7 
8 #include <set>
9 #include <string>
10 
11 
12 class G4Track;
13 class PHCompositeNode;
14 class PHG4Hit;
15 
17 {
18  public:
19  PHG4StackingAction(const std::string& name, const int i = 0);
21  {
22  }
23 
25  // It can classify those tracks (urgent, wait, kill, postpone to next event)
26  // default return in G4 is fUrgent
27  virtual G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track* /*aTrack*/) {return fUrgent;}
28  virtual void PrepareNewEvent() {}
29  virtual void Verbosity(const int i) { m_Verbosity = i; }
30  virtual int Verbosity() const { return m_Verbosity; }
31  virtual int Init() { return 0; }
32 
33  virtual void SetInterfacePointers(PHCompositeNode*) { return; }
34  virtual void Print(const std::string& /*what*/) const { return; }
35  std::string GetName() const { return m_Name; }
36  void SetName(const std::string& name) { m_Name = name; }
37 
38  private:
39  int m_Verbosity = 0;
40  std::string m_Name;
41 };
42 
43 #endif // G4MAIN_PHG4STACKINGACTION_H