GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
HNLGeomRecordVisitorI.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::hnl::GeomRecordVisitorI
5 
6 \brief Expands the EventRecordVisitorI interface to include public interfaces
7  for the HNL VertexGenerator module.
8  Concrete implementations of this interface use the 'Visitor' Design
9  Pattern to perform an operation on an EventRecord.
10 
11 \author John Plows <komninos-john.plows \at physics.ox.ac.uk>
12  University of Oxford
13 
14  Costas Andreopoulos <c.andreopoulos \at cern.ch>
15  University of Liverpool
16 
17 \created February 16th, 2023
18 
19 \cpright Copyright (c) 2003-2024, The GENIE Collaboration
20  For the full text of the license visit http://copyright.genie-mc.org
21 */
22 //____________________________________________________________________________
23 
24 #ifndef _HNL_GEOM_RECORD_VISITOR_I_H_
25 #define _HNL_GEOM_RECORD_VISITOR_I_H_
26 
28 
29 namespace genie {
30 
31  class GHepRecord;
32 
33  namespace hnl {
34 
36 
37  public:
38 
39  virtual ~GeomRecordVisitorI();
40 
41  //-- define the GeomRecordVisitorI interface
42 
43  virtual void ProcessEventRecord(GHepRecord * event_rec) const = 0;
44 
45  virtual void SetGeomFile( std::string geomfile ) const = 0;
46 
47  protected:
48 
50  GeomRecordVisitorI(string name);
51  GeomRecordVisitorI(string name, string config);
52 
53  };
54 
55  } // namespace hnl
56 
57 } // namespace genie
58 
59 #endif // #ifndef _HNL_GEOM_RECORD_VISTOR_I_H_
Defines the EventRecordVisitorI interface. Concrete implementations of this interface use the &#39;Visito...
virtual void SetGeomFile(std::string geomfile) const =0
Expands the EventRecordVisitorI interface to include public interfaces for the HNL VertexGenerator mo...
virtual void ProcessEventRecord(GHepRecord *event_rec) const =0
GENIE&#39;s GHEP MC event record.
Definition: GHepRecord.h:45