00001 #include "mu2e-artdaq-core/Overlays/FragmentType.hh" 00002 00003 #include <algorithm> 00004 #include <cassert> 00005 #include <string> 00006 #include <vector> 00007 00008 mu2e::FragmentType 00009 mu2e::toFragmentType(std::string t_string) 00010 { 00011 std::transform(t_string.begin(), 00012 t_string.end(), 00013 t_string.begin(), 00014 toupper); 00015 auto it = std::find(names.begin(), names.end(), t_string); 00016 return (it == names.end()) ? 00017 FragmentType::INVALID : 00018 static_cast<FragmentType>(artdaq::Fragment::FirstUserFragmentType + 00019 (it - names.begin())); 00020 } 00021 00022 std::string 00023 mu2e::fragmentTypeToString(FragmentType val) 00024 { 00025 if (val < FragmentType::INVALID) { 00026 return names[val - FragmentType::MISSED]; 00027 } 00028 else { 00029 return "INVALID/UNKNOWN"; 00030 } 00031 }