00001 //Dear emacs, this is -*- c++ -*- 00002 00013 #include "eformat/HeaderMarker.h" 00014 00015 eformat::HeaderMarker eformat::child_marker(eformat::HeaderMarker e) 00016 { 00017 using namespace eformat; 00018 switch (e) { 00019 case FULL_EVENT: 00020 return SUB_DETECTOR; 00021 case SUB_DETECTOR: 00022 return ROS; 00023 case ROS: 00024 return ROB; 00025 case ROB: 00026 return ROD; 00027 default: 00028 break; 00029 } 00030 return FULL_EVENT; 00031 } 00032 00033 std::string eformat::marker2string (const eformat::HeaderMarker& e) 00034 { 00035 using namespace eformat; 00036 switch (e) { 00037 case ROD: 00038 return "ROD"; 00039 case ROB: 00040 return "ROB"; 00041 case ROS: 00042 return "ROS"; 00043 case SUB_DETECTOR: 00044 return "SUB_DETECTOR"; 00045 case FULL_EVENT: 00046 return "FULL_EVENT"; 00047 } 00048 return "UNKNOWN_MARKER"; 00049 } 00050 00051 std::string eformat::marker2string (uint32_t e) 00052 { 00053 return marker2string((eformat::HeaderMarker)e); 00054 }