All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
IMesonGen.h
Go to the documentation of this file.
1 /**
2  * @file IMesonGen.h
3  *
4  * @brief This is an interface for an art Tool which sources MCFlux objects for
5  * downstream processing and tabulates POT information.
6  *
7  * @author grayputnam@uchicago.edu
8  *
9  */
10 #ifndef IMesonGen_h
11 #define IMesonGen_h
12 
13 // Framework Includes
14 #include "fhiclcpp/ParameterSet.h"
15 #include "art/Framework/Principal/Event.h"
16 
17 #include "nusimdata/SimulationBase/MCFlux.h"
18 
19 #include "IMeVPrtlStage.h"
20 
21 // Algorithm includes
22 
23 //------------------------------------------------------------------------------------------------------------------------------------------
24 
25 namespace evgen
26 {
27 namespace ldm {
28 /**
29  * @brief IMesonGen interface class definiton
30  */
31 class IMesonGen: virtual public IMeVPrtlStage
32 {
33 public:
34  /**
35  * @brief Virtual Destructor
36  */
37  virtual ~IMesonGen() noexcept = default;
38 
39  virtual simb::MCFlux GetNext() = 0;
40  virtual double GetPOT() = 0;
41 
42 };
43 
44 } // namespace ldm
45 } // namespace evgen
46 #endif
47 
virtual double GetPOT()=0
IMesonGen interface class definiton.
Definition: IMesonGen.h:31
IMeVPrtlStage interface class definiton. General interface behind each stage. Provides random number ...
Definition: IMeVPrtlStage.h:36
This provides an art tool interface definition for tools which can create fake particles to overlay o...
virtual simb::MCFlux GetNext()=0
virtual ~IMesonGen() noexcept=default
Virtual Destructor.