ScatteringType.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::ScatteringType
5 
6 \brief Enumeration of scattering types
7 
8 \author Costas Andreopoulos <costas.andreopoulos \at stfc.ac.uk>
9  University of Liverpool & STFC Rutherford Appleton Lab
10 
11  Changes required to implement the GENIE Boosted Dark Matter module
12  were installed by Josh Berger (Univ. of Wisconsin)
13 
14 \created May 06, 2004
15 
16 \cpright Copyright (c) 2003-2019, The GENIE Collaboration
17  For the full text of the license visit http://copyright.genie-mc.org
18  or see $GENIE/LICENSE
19 */
20 //____________________________________________________________________________
21 
22 #ifndef _SCATTERING_TYPE_H_
23 #define _SCATTERING_TYPE_H_
24 
25 #include <cassert>
26 #include <string>
27 
28 using std::string;
29 
30 namespace genie {
31 
32 // Note: please attach new _neutrino_ scattering modes to the _end_ of the
33 // list of neutrino enums, and new dark matter modes to the end of the list
34 // of dark matter enums, etc. If adding an entirely new set of enums, please
35 // append to the end of the total list and set a new enum counter value.
36 typedef enum EScatteringType {
37 
38  kScNull = 0,
55 
57 
59 {
60 public:
61 
62  //__________________________________________________________________________
63  static string AsString(ScatteringType_t type)
64  {
65  switch (type) {
66 
67  case(kScQuasiElastic) : return "QES"; break;
68  case(kScSingleKaon) : return "1Kaon"; break;
69  case(kScDeepInelastic) : return "DIS"; break;
70  case(kScResonant) : return "RES"; break;
71  case(kScCoherent) : return "COH"; break;
72  case(kScDiffractive) : return "DFR"; break;
73  case(kScNuElectronElastic) : return "NuEEL"; break;
74  case(kScInverseMuDecay) : return "IMD"; break;
75  case(kScAMNuGamma) : return "AMNuGamma"; break;
76  case(kScMEC) : return "MEC"; break;
77  case(kScCoherentElas) : return "COHEl"; break;
78  case(kScInverseBetaDecay) : return "IBD"; break;
79  case(kScGlashowResonance) : return "GLR"; break;
80  case(kScIMDAnnihilation) : return "IMDAnh"; break;
81  case(kScDarkMatterElastic) : return "DME"; break;
82  case(kScDarkMatterDeepInelastic) : return "DMDIS"; break;
83  default : return "Unknown"; break;
84  }
85  return "Unknown";
86  }
87  //__________________________________________________________________________
88 };
89 
90 } // genie namespace
91 
92 #endif // _SCATTERING_TYPE_H_
THE MAIN GENIE PROJECT NAMESPACE
Definition: GeneratorBase.h:8
Enumeration of scattering types.
static string AsString(ScatteringType_t type)
enum genie::EScatteringType ScatteringType_t
enum BeamMode string