GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
KineVar.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::KineVar
5 
6 \brief Enumeration of kinematic variables
7 
8 \author Costas Andreopoulos <c.andreopoulos \at cern.ch>
9  University of Liverpool
10 
11 \created May 06, 2004
12 
13 \cpright Copyright (c) 2003-2024, The GENIE Collaboration
14  For the full text of the license visit http://copyright.genie-mc.org
15 */
16 //____________________________________________________________________________
17 
18 #ifndef _KINEMATIC_VAR_ENUM_H_
19 #define _KINEMATIC_VAR_ENUM_H_
20 
21 #include <cassert>
22 #include <string>
23 
24 using std::string;
25 
26 namespace genie {
27 
28 typedef enum EKineVar {
29 
30  kKVNull = 0,
66  // put all new enum names right before this line
67  // do not change any previous ordering (neither insert nor delete)
69 
70 } KineVar_t;
71 
72 class KineVar
73 {
74 public:
75 
76  //__________________________________________________________________________
77  static string AsString(KineVar_t kv)
78  {
79  switch (kv) {
80  case(kKVNull) : return "** Undefined kinematic variable **"; break;
81  case(kKVx) : return " *Running* Bjorken x"; break;
82  case(kKVy) : return " *Running* Inelasticity y"; break;
83  case(kKVQ2) : return " *Running* Momentum transfer Q2 (>0)"; break;
84  case(kKVq2) : return " *Running* Momentum transfer q2 (<0)"; break;
85  case(kKVW) : return " *Running* Hadronic invariant mass W"; break;
86  case(kKVt) : return " *Running* COH 4p transfer to nucleus"; break;
87  case(kKVTk) : return " *Running* meson kinetic energy"; break;
88  case(kKVTl) : return " *Running* lepton kinetic energy"; break;
89  case(kKVctl) : return " *Running* cosine of lepton theta"; break;
90  case(kKVphikq) : return " *Running* ASK phi kq"; break;
91  case(kKVSelx) : return "*Selected* Bjorken x"; break;
92  case(kKVSely) : return "*Selected* Inelasticity y"; break;
93  case(kKVSelQ2) : return "*Selected* Momentum transfer Q2 (>0)"; break;
94  case(kKVSelq2) : return "*Selected* Momentum transfer q2 (<0)"; break;
95  case(kKVSelW) : return "*Selected* Hadronic invariant mass W"; break;
96  case(kKVSelt) : return "*Selected* COH 4p transfer to nucleus"; break;
97  case(kKVSelTk) : return "*Selected* ASK kaon kinetic energy"; break;
98  case(kKVSelTl) : return "*Selected* ASK lepton kinetic energy"; break;
99  case(kKVSelctl) : return "*Selected* ASK cosine lepton theta"; break;
100  case(kKVSelphikq): return "*Selected* ASK phi kq"; break;
101  case(kKVSelRad) : return "*Selected* Struck particle position"; break;
102  case(kKVPn) : return " *Running* Hit nucleon momentum"; break;
103  case(kKVv) : return " *Running* Energy transfer"; break;
104  case(kKVphip) : return " *Running* SPP final pion phi"; break;
105  case(kKVctp) : return " *Running* SPP cosine final pion theta"; break;
106  case(kKVSelv) : return "*Selected* Energy transfer"; break;
107  case(kKVQ0) : return " *Running* Energy transfer (Q0)" ; break;
108  case(kKVQ3) : return " *Running* three momentum transfer" ; break;
109  case(kKVSelQ0) : return "*Selected* energy transfer (Q0) " ; break;
110  case(kKVSelQ3) : return "*Selected* three momentum transfer" ; break;
111  case(kKVn1) : return " *Running* Normalized variable n1" ; break;
112  case(kKVn2) : return " *Running* Normalized variable n2" ; break;
113  case(kKVn3) : return " *Running* Normalized variable n3" ; break;
114  case(kKVSelphip) : return "*Selected* SPP final pion phi"; break;
115  case(kKVSelctp) : return "*Selected* SPP cosine final pion theta"; break;
116  default : return "** Unknown kinematic variable **"; break;
117  }
118  return "** Unknown kinematic variable **";
119  }
120  //__________________________________________________________________________
121 };
122 
123 } // genie namespace
124 
125 #endif // _KINEMATIC_VAR_ENUM_H_
Enumeration of kinematic variables.
Definition: KineVar.h:72
EKineVar
Definition: KineVar.h:28
enum genie::EKineVar KineVar_t
static string AsString(KineVar_t kv)
Definition: KineVar.h:77