GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
InteractionSelectorI.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::InteractionSelectorI
5 
6 \brief Defines the InteractionSelectorI interface to be implemented by
7  algorithms selecting interactions to be generated.
8 
9 \author Costas Andreopoulos <c.andreopoulos \at cern.ch>
10  University of Liverpool
11 
12 \created December 05, 2004
13 
14 \cpright Copyright (c) 2003-2024, The GENIE Collaboration
15  For the full text of the license visit http://copyright.genie-mc.org
16 */
17 //____________________________________________________________________________
18 
19 #ifndef _INTERACTION_SELECTOR_I_H_
20 #define _INTERACTION_SELECTOR_I_H_
21 
23 
24 class TLorentzVector;
25 
26 namespace genie {
27 
28 class InteractionGeneratorMap;
29 class EventRecord;
30 
32 
33 public :
34  virtual ~InteractionSelectorI();
35 
36  //! Define the InteractionSelectorI interface
38  (const InteractionGeneratorMap * igmp, const TLorentzVector & p4) const = 0;
39 
40 protected:
42  InteractionSelectorI(string name);
43  InteractionSelectorI(string name, string config);
44 };
45 
46 } // genie namespace
47 
48 #endif // _INTERACTION_SELECTOR_I_H_
Algorithm abstract base class.
Definition: Algorithm.h:54
virtual EventRecord * SelectInteraction(const InteractionGeneratorMap *igmp, const TLorentzVector &p4) const =0
Define the InteractionSelectorI interface.
An Interaction -&gt; EventGeneratorI associative container. The container is being built for the loaded ...
Generated Event Record. It is a GHepRecord object that can accept / be visited by EventRecordVisitorI...
Definition: EventRecord.h:37
Defines the InteractionSelectorI interface to be implemented by algorithms selecting interactions to ...