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 <costas.andreopoulos \at stfc.ac.uk>
13  University of Liverpool & STFC Rutherford Appleton Lab
14 
15 \created October 1, 2004
16 
17 \cpright Copyright (c) 2003-2019, The GENIE Collaboration
18  For the full text of the license visit http://copyright.genie-mc.org
19  or see $GENIE/LICENSE
20 */
21 //____________________________________________________________________________
22 
23 #ifndef _NTP_MC_EVENT_RECORD_H_
24 #define _NTP_MC_EVENT_RECORD_H_
25 
26 #include <ostream>
27 
30 
31 using std::ostream;
32 
33 namespace genie {
34 
35 class NtpMCEventRecord;
36 ostream & operator<< (ostream& stream, const NtpMCEventRecord & rec);
37 
39 
40 public :
41  using NtpMCRecordI::Copy; // suppress clang 'hides overloaded virtual function [-Woverloaded-virtual]' warnings
42 
44  NtpMCEventRecord(const NtpMCEventRecord & ntpmcrec);
45  virtual ~NtpMCEventRecord();
46 
47  void Fill (unsigned int ievent, const EventRecord * ev_rec);
48  void Copy (const NtpMCEventRecord & ntpmcrec);
49  void Clear (Option_t * opt = "");
50 
51  void PrintToStream(ostream & stream) const;
52  friend ostream & operator<< (ostream& stream, const NtpMCEventRecord & rec);
53 
54  // Ntuple is treated like a C-struct with public data members and
55  // rule-breaking field data members not prefaced by "f" and mostly lowercase.
56  EventRecord * event; ///< event
57 
58 private:
59 
60  void Init (void);
61 
62  ClassDef(NtpMCEventRecord, 1)
63 };
64 
65 } // genie namespace
66 
67 #endif // _NTP_MC_EVENT_RECORD_H_
THE MAIN GENIE PROJECT NAMESPACE
Definition: GeneratorBase.h:8
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)
MINOS-style base class for ntuple records.
Definition: NtpMCRecordI.h:30
caf::StandardRecord * rec
Definition: tutCAFMacro.C:20
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:38
ostream & operator<<(ostream &stream, const AlgConfigPool &config_pool)
void Clear(Option_t *opt="")
EventRecord * event
event
friend ostream & operator<<(ostream &stream, const NtpMCEventRecord &rec)