MCGeneratorInfo.h
Go to the documentation of this file.
1 ////////////////////////////////////////////////////////////////////////
2 /// \file MCGeneratorInfo.cxx
3 /// \brief Info on the generator
4 ///
5 /// \author J. Wolcott <jwolcott@fnal.gov>
6 ////////////////////////////////////////////////////////////////////////
7 
8 #ifndef SIMB_MCGENERATORINFO_H
9 #define SIMB_MCGENERATORINFO_H
10 
11 #include <string>
12 #include <unordered_map>
13 
14 namespace simb
15 {
16 
17  /// generator used to produce event, if applicable
18  typedef enum class _ev_generator
19  {
20  kUnknown,
21  kGENIE,
22  kCRY,
23  kGIBUU,
24  kNuWro,
25  kMARLEY,
26  kNEUT,
27  kCORSIKA,
28  kGEANT,
29  kNumGenerators, // this should always be the last entry
30  } Generator_t;
31 
33  {
34  simb::Generator_t generator; ///< event generator that generated this event
35  std::string generatorVersion; ///< event generator version
36  std::unordered_map<std::string, std::string> generatorConfig; ///< free-form field that can be used to keep track of generator configuration (e.g. GENIE tune)
37 
39  const std::string ver = "",
40  const std::unordered_map<std::string, std::string> config = {})
41  : generator(gen), generatorVersion(ver), generatorConfig(config)
42  {}
43  };
44 }
45 
46 #endif //SIMB_MCGENERATORINFO_H
enum simb::_ev_generator Generator_t
generator used to produce event, if applicable
Definition: config.py:1
simb::Generator_t generator
event generator that generated this event
This class describes a particle created in the detector Monte Carlo simulation.
std::string generatorVersion
event generator version
::xsd::cxx::tree::string< char, simple_type > string
Definition: Database.h:154
_ev_generator
generator used to produce event, if applicable
std::unordered_map< std::string, std::string > generatorConfig
free-form field that can be used to keep track of generator configuration (e.g. GENIE tune) ...
MCGeneratorInfo(Generator_t gen=Generator_t::kUnknown, const std::string ver="", const std::unordered_map< std::string, std::string > config={})