LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
KillerAction_service.hh
Go to the documentation of this file.
1 //
2 // __ __ __ __ __
3 // ____ ______/ /_____ _/ // / / /_/ /__
4 // / __ `/ ___/ __/ __ `/ // /_/ __/ //_/
5 // / /_/ / / / /_/ /_/ /__ __/ /_/ ,<
6 // \__,_/_/ \__/\__, / /_/ \__/_/|_|
7 // /____/
8 //
9 // artg4tk: art based Geant 4 Toolkit
10 //
11 //=============================================================================
12 // KillerActionService.hh: example artg4tk stacking action that allows to
13 // liik certain particles of interest ((p0, eta, gamma from nCapture)
14 // To use this, all you need to do is put it in the services section
15 // of the configuration file, like this:
16 //
17 // services: {
18 // ...
19 // user: {
20 // KillerAction : {name: "KillerAction"
21 // killPi0: true
22 // killeta: false
23 // killGammafromnCapture: false
24 // }
25 // . ..
26 // }
27 // }
28 // Author: Hans Wenzel (Fermilab)
29 //=============================================================================
30 
31 #ifndef artg4tk_pluginActions_myKiller_KillerAction_service_hh
32 #define artg4tk_pluginActions_myKiller_KillerAction_service_hh
33 
34 // Includes for general action service
36 #include "fhiclcpp/fwd.h"
38 
39 // Get the base class
40 
42 
43 namespace artg4tk {
44 
46  public:
48  virtual ~KillerActionService();
49  bool killNewTrack(const G4Track* aTrack) override;
50 
51  private:
52  // Member data!
53  bool killPi0;
54  bool killeta;
56  // A message logger for this action
58  };
59 } // end namespace artg4tk
60 
62 #endif /* artg4tk_pluginActions_myKiller_KillerAction_service_hh */
#define DECLARE_ART_SERVICE(svc, scope)
KillerActionService(fhicl::ParameterSet const &)
Definition: KillerAction.cc:39
bool killNewTrack(const G4Track *aTrack) override
Definition: KillerAction.cc:51