00001
00013 #ifndef _FLAVOR_H_
00014 #define _FLAVOR_H_
00015
00016 #ifndef ROOT_Rtypes
00017 #if !defined(__CINT__) || defined(__MAKECINT__)
00018 #include "Rtypes.h"
00019 #endif
00020 #endif
00021
00022 typedef enum flavor_enum {
00023
00024 e_e = 1,
00025 e_mu,
00026 e_tau,
00027 e_undefined_flavor
00028
00029 } flavor_t;
00030
00031 namespace flavor {
00032
00033 inline const char * as_string(flavor_t flavor)
00034 {
00035 switch(flavor) {
00036 case e_e: return "Electron flavor "; break;
00037 case e_mu: return "Muon flavor"; break;
00038 case e_tau: return "Tau flavor"; break;
00039 case e_undefined_flavor:
00040 default:
00041 return "Unknown flavor"; break;
00042 }
00043 return "Bad flavor";
00044 }
00045
00046 inline flavor_t get_from_code(int pdgc)
00047 {
00048 if (pdgc == 5 || pdgc == 6) return e_e;
00049 else if (pdgc == 7 || pdgc == 8) return e_mu;
00050 else if (pdgc == 9 || pdgc == 10) return e_tau;
00051 else return e_undefined_flavor;
00052 }
00053
00054 }
00055
00056 #endif
00057