NtpMCTreeHeader.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::NtpMCTreeHeader
5 
6 \brief MINOS-style Ntuple Class to hold an output MC Tree Header
7 
8 \author Costas Andreopoulos <constantinos.andreopoulos \at cern.ch>
9  University of Liverpool & STFC Rutherford Appleton Laboratory
10 
11 \created October 1, 2004
12 
13 \cpright Copyright (c) 2003-2020, The GENIE Collaboration
14  For the full text of the license visit http://copyright.genie-mc.org
15 */
16 //____________________________________________________________________________
17 
18 #ifndef _NTP_MC_TREE_HEADER_H_
19 #define _NTP_MC_TREE_HEADER_H_
20 
21 #include <ostream>
22 
23 #include <TNamed.h>
24 #include <TObjString.h>
25 
28 
29 using std::string;
30 using std::ostream;
31 
32 namespace genie {
33 
34 class NtpMCTreeHeader;
35 ostream & operator << (ostream & stream, const NtpMCTreeHeader & hdr);
36 
37 class NtpMCTreeHeader : public TNamed {
38 
39 public :
40  using TNamed::Copy; // suppress clang 'hides overloaded virtual function [-Woverloaded-virtual]' warnings
41 
43  NtpMCTreeHeader(const NtpMCTreeHeader & hdr);
44  virtual ~NtpMCTreeHeader();
45 
46  void Init (void);
47  void Copy (const NtpMCTreeHeader & hdr);
48 
49  void PrintToStream(ostream & stream) const;
50 
51  friend ostream & operator << (ostream & stream, const NtpMCTreeHeader & hdr);
52 
53  // Ntuple is treated like a C-struct with public data members and
54  // rule-breakinsg field data members not prefaced by "f" and mostly lowercase.
55 
56  NtpMCFormat_t format; ///< Event Record format (GENIE support multiple formats)
57  TObjString cvstag; ///< GENIE CVS Tag (to keep track of GENIE's version)
58  NtpMCDTime datime; ///< Date and Time that the event ntuple was generated
59  Long_t runnu; ///< MC Job run number
60  Long_t runseed; ///< Random seed used in the MC run
61  TObjString tune; ///< GENIE Tune Name
62  TObjString tuneDir; ///< directory from when tune config came
63  TObjString customDirs; ///< any custom directories
64 
66 };
67 
68 } // genie namespace
69 
70 #endif // _NTP_MC_TREE_HEADER_H_
THE MAIN GENIE PROJECT NAMESPACE
Definition: AlgCmp.h:25
std::string string
Definition: nybbler.cc:12
TObjString tune
GENIE Tune Name.
NtpMCDTime datime
Date and Time that the event ntuple was generated.
friend ostream & operator<<(ostream &stream, const NtpMCTreeHeader &hdr)
MINOS-style Ntuple Class to hold the date and time that the event ntuple was generated.
Definition: NtpMCDTime.h:33
void Copy(const NtpMCTreeHeader &hdr)
TObjString tuneDir
directory from when tune config came
TObjString cvstag
GENIE CVS Tag (to keep track of GENIE&#39;s version)
MINOS-style Ntuple Class to hold an output MC Tree Header.
void PrintToStream(ostream &stream) const
Long_t runnu
MC Job run number.
TObjString customDirs
any custom directories
NtpMCFormat_t format
Event Record format (GENIE support multiple formats)
ostream & operator<<(ostream &stream, const AlgConfigPool &config_pool)
enum genie::ENtpMCFormat NtpMCFormat_t
Long_t runseed
Random seed used in the MC run.