LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
StackingActionBase.hh
Go to the documentation of this file.
1 // This file is the header for the @StackingActionBase@ class.
2 // All action objects MUST inherit from this class.
3 
4 // The usual method in @G4UserStackingAction@ is @ClassifyNewTrack@. Here, you instead
5 // supply a function for @killNewTrack@, which returns @true@ if the track should be killed
6 // and @false@ if the track should remain in the Urgent list (there is no capability to
7 // put a track on the waiting list). See @artg4tk/geantInit/ArtG4StackingAction.hh@ and @.cc@ for
8 // how this class is handled.
9 
10 #ifndef artg4tk_actionBase_StackingActionBase_hh
11 #define artg4tk_actionBase_StackingActionBase_hh
12 
13 #include <string>
14 
16 
17 class G4Track;
18 
19 namespace artg4tk {
20 
21  class StackingActionBase : public ActionBase {
22  public:
23  // Constructor. The derived class must call this constructor. It takes a
24  // single string for the name of the action object.
25  explicit StackingActionBase(std::string name);
26 
27  // Destructor
28  virtual ~StackingActionBase();
29 
30  // killNewTrack (see above)
31  virtual bool
32  killNewTrack(const G4Track*)
33  {
34  return false;
35  }
36  };
37 }
38 
39 #endif /* artg4tk_actionBase_StackingActionBase_hh */
StackingActionBase(std::string name)
virtual bool killNewTrack(const G4Track *)