EventRecord.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::EventRecord
5 
6 \brief Generated Event Record. It is a GHepRecord object that can accept /
7  be visited by EventRecordVisitorI objects (event generation modules).
8  All the other important container manipulation methods are defined
9  at the base GHepRecord record.
10 
11 \author Costas Andreopoulos <constantinos.andreopoulos \at cern.ch>
12  University of Liverpool & STFC Rutherford Appleton Laboratory
13 
14 \created October 1, 2004
15 
16 \cpright Copyright (c) 2003-2020, The GENIE Collaboration
17  For the full text of the license visit http://copyright.genie-mc.org
18 */
19 //____________________________________________________________________________
20 
21 #ifndef _EVENT_RECORD_H_
22 #define _EVENT_RECORD_H_
23 
24 #include <ostream>
25 
27 
28 using std::ostream;
29 
30 namespace genie {
31 
32 class EventRecord;
33 class EventRecordVisitorI;
34 
35 ostream & operator<< (ostream& stream, const EventRecord & event);
36 
37 class EventRecord : public GHepRecord {
38 
39 public :
40  using GHepRecord::Copy; // suppress clang 'hides overloaded virtual function [-Woverloaded-virtual]' warnings
41  using GHepRecord::Print;
42 
43  EventRecord();
44  EventRecord(int size);
45  EventRecord(const EventRecord & record);
46  ~EventRecord();
47 
48  void AcceptVisitor (EventRecordVisitorI * visitor);
49  virtual void Copy (const EventRecord & record);
50  virtual void Print (ostream & stream) const;
51 
52  friend ostream & operator<< (ostream& stream, const EventRecord & event);
53 
54 private:
55 
57 
58 };
59 
60 } // genie namespace
61 
62 #endif // _EVENT_RECORD_H_
virtual void Copy(const GHepRecord &record)
Definition: GHepRecord.cxx:899
void Print(ostream &stream) const
Definition: GHepRecord.cxx:957
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
virtual void Copy(const EventRecord &record)
Definition: EventRecord.cxx:58
Defines the EventRecordVisitorI interface. Concrete implementations of this interface use the &#39;Visito...
virtual void Print(ostream &stream) const
Definition: EventRecord.cxx:71
friend ostream & operator<<(ostream &stream, const EventRecord &event)
decltype(auto) constexpr size(T &&obj)
ADL-aware version of std::size.
Definition: StdUtils.h:92
Generated Event Record. It is a GHepRecord object that can accept / be visited by EventRecordVisitorI...
Definition: EventRecord.h:37
ostream & operator<<(ostream &stream, const AlgConfigPool &config_pool)
void AcceptVisitor(EventRecordVisitorI *visitor)
Definition: EventRecord.cxx:53
GENIE&#39;s GHEP MC event record.
Definition: GHepRecord.h:45
Event finding and building.