NtpMCEventRecord.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::NtpMCEventRecord
5 
6 \brief MINOS-style ntuple record. Each such ntuple record holds a generated
7  EventRecord object. Ntuples of this type are intended for feeding
8  GENIE events into other applications (for example the GEANT4 based
9  MC generation framework of an experiment) if no direct interface
10  exists.
11 
12 \author Costas Andreopoulos <constantinos.andreopoulos \at cern.ch>
13  University of Liverpool & STFC Rutherford Appleton Laboratory
14 
15 \created October 1, 2004
16 
17 \cpright Copyright (c) 2003-2020, The GENIE Collaboration
18  For the full text of the license visit http://copyright.genie-mc.org
19 */
20 //____________________________________________________________________________
21 
22 #ifndef _NTP_MC_EVENT_RECORD_H_
23 #define _NTP_MC_EVENT_RECORD_H_
24 
25 #include <ostream>
26 
29 
30 using std::ostream;
31 
32 namespace genie {
33 
34 class NtpMCEventRecord;
35 ostream & operator<< (ostream& stream, const NtpMCEventRecord & rec);
36 
38 
39 public :
40  using NtpMCRecordI::Copy; // suppress clang 'hides overloaded virtual function [-Woverloaded-virtual]' warnings
41 
43  NtpMCEventRecord(const NtpMCEventRecord & ntpmcrec);
44  virtual ~NtpMCEventRecord();
45 
46  void Fill (unsigned int ievent, const EventRecord * ev_rec);
47  void Copy (const NtpMCEventRecord & ntpmcrec);
48  void Clear (Option_t * opt = "");
49 
50  void PrintToStream(ostream & stream) const;
51  friend ostream & operator<< (ostream& stream, const NtpMCEventRecord & rec);
52 
53  // Ntuple is treated like a C-struct with public data members and
54  // rule-breaking field data members not prefaced by "f" and mostly lowercase.
55  EventRecord * event; ///< event
56 
57 private:
58 
59  void Init (void);
60 
62 };
63 
64 } // genie namespace
65 
66 #endif // _NTP_MC_EVENT_RECORD_H_
rec
Definition: tracks.py:88
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
MINOS-style ntuple record. Each such ntuple record holds a generated EventRecord object. Ntuples of this type are intended for feeding GENIE events into other applications (for example the GEANT4 based MC generation framework of an experiment) if no direct interface exists.
void Fill(unsigned int ievent, const EventRecord *ev_rec)
opt
Definition: train.py:196
MINOS-style base class for ntuple records.
Definition: NtpMCRecordI.h:29
void Copy(const NtpMCEventRecord &ntpmcrec)
void PrintToStream(ostream &stream) const
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 Clear(Option_t *opt="")
EventRecord * event
event
friend ostream & operator<<(ostream &stream, const NtpMCEventRecord &rec)