00001
00013 #ifndef _KINEMATIC_VARIABLE_H_
00014 #define _KINEMATIC_VARIABLE_H_
00015
00016 #ifndef ROOT_Rtypes
00017 #if !defined(__CINT__) || defined(__MAKECINT__)
00018 #include "Rtypes.h"
00019 #endif
00020 #endif
00021
00022 typedef enum kinematic_variable_enum {
00023
00024 e_nokv = 0,
00025 e_qqs = 1,
00026 e_w,
00027 e_x,
00028 e_y,
00029 e_logqqs,
00030 e_undefined_kinematic_variable
00031
00032 } kinematic_variable_t;
00033
00034 namespace kinematic_variable {
00035
00036 inline const char * as_string(kinematic_variable_t kid)
00037 {
00038 switch(kid) {
00039 case e_qqs: return "qqs"; break;
00040 case e_w: return "W"; break;
00041 case e_x: return "x"; break;
00042 case e_y: return "y"; break;
00043
00044 case e_undefined_kinematic_variable:
00045 default:
00046 return "unknown kinematic variable"; break;
00047 }
00048 return "bad kinematic variable";
00049 }
00050
00051 inline kinematic_variable_t get_kin_var_id_from_code(int code)
00052 {
00053 if (code == 0) return e_nokv;
00054 else if (code == 1) return e_qqs;
00055 else if (code == 2) return e_w;
00056 else if (code == 3) return e_x;
00057 else if (code == 4) return e_y;
00058 else if (code == 5) return e_logqqs;
00059 else return e_undefined_kinematic_variable;
00060 }
00061
00062 }
00063
00064 #endif
00065