All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SREnums.h
Go to the documentation of this file.
1 #ifndef SRENUMS_H
2 #define SRENUMS_H
3 
4 namespace caf
5 {
6  /// Which SBN detector?
7  enum Det_t
8  {
9  kUNKNOWN, ///< Unknown detector
10  kSBND, ///< Near Detector
11  kICARUS ///< Far Detector
12  };
13 
14  enum Plane_t
15  {
20  };
21 
22  enum Wall_t
23  {
31  };
32 
33  /// Which type of MC?
34  enum MCType_t
35  {
41  };
42 
43  /// Which generator?
45  {
47  kGENIE = 1,
49  };
50 
51  // For MeVPrtl -- which physics channel
56  };
57 
58  /// These values are taken from nusimdata/SimulationBase/MCNeutrino.h (where
59  /// they are probably copied from some genie header). Duplicating that
60  /// information here is sub-optimal, but less sub-optimal than adding a
61  /// dependency on larsoft to interpret the CAF files.
63  {
64  // Low part of the enum, used to encode mode
66  kQE = 0,
67  kRes = 1,
68  kDIS = 2,
69  kCoh = 3,
76  kMEC = 10,
78  kEM = 12,
79  kWeakMix = 13
80  };
81 
83  {
85  kNuanceOffset = 1000, ///< offset to account for adding in Nuance codes to this enum
86  kCCQE = kNuanceOffset + 1, ///< charged current quasi-elastic
87  kNCQE = kNuanceOffset + 2, ///< neutral current quasi-elastic
88  kResCCNuProtonPiPlus = kNuanceOffset + 3, ///< resonant charged current, nu p -> l- p pi+
89  kResCCNuNeutronPi0 = kNuanceOffset + 4, ///< resonant charged current, nu n -> l- p pi0
90  kResCCNuNeutronPiPlus = kNuanceOffset + 5, ///< resonant charged current, nu n -> l- n pi+
91  kResNCNuProtonPi0 = kNuanceOffset + 6, ///< resonant neutral current, nu p -> nu p pi0
92  kResNCNuProtonPiPlus = kNuanceOffset + 7, ///< resonant neutral current, nu p -> nu p pi+
93  kResNCNuNeutronPi0 = kNuanceOffset + 8, ///< resonant neutral current, nu n -> nu n pi0
94  kResNCNuNeutronPiMinus = kNuanceOffset + 9, ///< resonant neutral current, nu n -> nu p pi-
95  kResCCNuBarNeutronPiMinus = kNuanceOffset + 10, ///< resonant charged current, nubar n -> l+ n pi-
96  kResCCNuBarProtonPi0 = kNuanceOffset + 11, ///< resonant charged current, nubar p -> l+ n pi0
97  kResCCNuBarProtonPiMinus = kNuanceOffset + 12, ///< resonant charged current, nubar p -> l+ p pi-
98  kResNCNuBarProtonPi0 = kNuanceOffset + 13, ///< resonant charged current, nubar p -> nubar p pi0
99  kResNCNuBarProtonPiPlus = kNuanceOffset + 14, ///< resonant charged current, nubar p -> nubar n pi+
100  kResNCNuBarNeutronPi0 = kNuanceOffset + 15, ///< resonant charged current, nubar n -> nubar n pi0
101  kResNCNuBarNeutronPiMinus = kNuanceOffset + 16, ///< resonant charged current, nubar n -> nubar p pi-
123  kCCDIS = kNuanceOffset + 91, ///< charged current deep inelastic scatter
124  kNCDIS = kNuanceOffset + 92, ///< charged current deep inelastic scatter
129  kCCCOH = kNuanceOffset + 97, ///< charged current coherent pion
130  kNuElectronElastic = kNuanceOffset + 98, ///< neutrino electron elastic scatter
131  kInverseMuDecay = kNuanceOffset + 99, ///< inverse muon decay
132  kMEC2p2h = kNuanceOffset + 100 ///< extension of nuance encoding for MEC / 2p2h
133 
134  };
135 
136  /// Which genie status?
138  {
151  kNotGenie = 17 //!< Not a genie particle
152  };//genie_status
153 
154  /// Which G4 process ?
156  {
218  kG4msc=61,
221  };// g4_process_
222 
223  //==== This should be synchronized to rwtype in sbnobj/Common/SBNEventWeight/EventWeightParameterSet.h
225  kDefault = -1,
228  kFixed = 2,
230  };
231 }
232 
233 #endif
Unknown detector.
Definition: SREnums.h:9
Det_t
Which SBN detector?
Definition: SREnums.h:7
resonant neutral current, nu p -&gt; nu p pi0
Definition: SREnums.h:91
resonant charged current, nubar p -&gt; nubar p pi0
Definition: SREnums.h:98
Plane_t
Definition: SREnums.h:14
offset to account for adding in Nuance codes to this enum
Definition: SREnums.h:85
resonant charged current, nubar n -&gt; nubar p pi-
Definition: SREnums.h:101
resonant charged current, nu n -&gt; l- n pi+
Definition: SREnums.h:90
resonant charged current, nubar p -&gt; l+ p pi-
Definition: SREnums.h:97
resonant neutral current, nu n -&gt; nu p pi-
Definition: SREnums.h:94
Far Detector.
Definition: SREnums.h:11
Wall_t
Definition: SREnums.h:22
extension of nuance encoding for MEC / 2p2h
Definition: SREnums.h:132
genie_interaction_mode_
Definition: SREnums.h:62
inverse muon decay
Definition: SREnums.h:131
g4_process_
Which G4 process ?
Definition: SREnums.h:155
charged current deep inelastic scatter
Definition: SREnums.h:124
MCType_t
Which type of MC?
Definition: SREnums.h:34
generator_
Which generator?
Definition: SREnums.h:44
resonant neutral current, nu n -&gt; nu n pi0
Definition: SREnums.h:93
neutrino electron elastic scatter
Definition: SREnums.h:130
resonant charged current, nubar p -&gt; nubar n pi+
Definition: SREnums.h:99
charged current coherent pion
Definition: SREnums.h:129
resonant neutral current, nu p -&gt; nu p pi+
Definition: SREnums.h:92
resonant charged current, nu n -&gt; l- p pi0
Definition: SREnums.h:89
resonant charged current, nubar n -&gt; l+ n pi-
Definition: SREnums.h:95
ReweightType_t
Definition: SREnums.h:224
Not a genie particle.
Definition: SREnums.h:151
genie_interaction_type_
Definition: SREnums.h:82
genie_status_
Which genie status?
Definition: SREnums.h:137
mevprtlchannel_
Definition: SREnums.h:52
resonant charged current, nubar p -&gt; l+ n pi0
Definition: SREnums.h:96
resonant charged current, nubar n -&gt; nubar n pi0
Definition: SREnums.h:100
Near Detector.
Definition: SREnums.h:10
neutral current quasi-elastic
Definition: SREnums.h:87
charged current quasi-elastic
Definition: SREnums.h:86
resonant charged current, nu p -&gt; l- p pi+
Definition: SREnums.h:88
charged current deep inelastic scatter
Definition: SREnums.h:123