GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
InteractionListGeneratorI.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::InteractionListGeneratorI
5 
6 \brief Defines the InteractionListGeneratorI interface.
7  Concrete implementations of this interface generate a list of all
8  Interaction (= event summary) objects that can be generated by
9  EventGeneratorI subclasses.
10 
11 \author Costas Andreopoulos <c.andreopoulos \at cern.ch>
12  University of Liverpool
13 
14 \created May 13, 2005
15 
16 \cpright Copyright (c) 2003-2024, The GENIE Collaboration
17  For the full text of the license visit http://copyright.genie-mc.org
18 */
19 //____________________________________________________________________________
20 
21 #ifndef _INTERACTION_LIST_GENERATOR_I_H_
22 #define _INTERACTION_LIST_GENERATOR_I_H_
23 
25 
26 namespace genie {
27 
28 class InteractionList;
29 class InitialState;
30 
32 
33 public :
34 
35  //-- define the InteractionListGeneratorI interface
36 
37  virtual InteractionList *
38  CreateInteractionList(const InitialState & init) const = 0;
39 
40 protected :
41 
43  InteractionListGeneratorI(string name);
44  InteractionListGeneratorI(string name, string config);
46 };
47 
48 } // genie namespace
49 
50 #endif // _INTERACTION_LIST_GENERATOR_I_H_
Defines the InteractionListGeneratorI interface. Concrete implementations of this interface generate ...
Algorithm abstract base class.
Definition: Algorithm.h:54
virtual InteractionList * CreateInteractionList(const InitialState &init) const =0
A vector of Interaction objects.
Initial State information.
Definition: InitialState.h:48