1 #ifndef artdaq_demo_Overlays_FragmentType_hh
2 #define artdaq_demo_Overlays_FragmentType_hh
3 #include <unordered_map>
4 #include "artdaq-core/Data/Fragment.hh"
17 MISSED = artdaq::Fragment::FirstUserFragmentType,
18 TOY1 = artdaq::Fragment::FirstUserFragmentType + 1,
19 TOY2 = artdaq::Fragment::FirstUserFragmentType + 2,
20 ASCII = artdaq::Fragment::FirstUserFragmentType + 3,
21 UDP = artdaq::Fragment::FirstUserFragmentType + 4,
26 static_assert(artdaq::Fragment::isUserFragmentType(FragmentType::INVALID - 1),
"Too many user-defined fragments!");
34 std::unordered_map<FragmentType, std::string>
const names{
35 {FragmentType::MISSED,
"MISSED"},
36 {FragmentType::TOY1,
"TOY1"},
37 {FragmentType::TOY2,
"TOY2"},
38 {FragmentType::ASCII,
"ASCII"},
39 {FragmentType::UDP,
"UDP"},
40 {FragmentType::INVALID,
"UNKNOWN"}};
std::unordered_map< FragmentType, std::string > const names
List of names (in the order defined below) of the User types defined in artdaq_core_demo.
std::string fragmentTypeToString(FragmentType val)
Look up the name of the given FragmentType.
FragmentType
User type codes defined by artdaq_core_demo.
std::map< artdaq::Fragment::type_t, std::string > makeFragmentTypeMap()
Create a list of all Fragment types defined by this package, in the format that RawInput expects...
FragmentType toFragmentType(std::string t_string)
Lookup the type code for a fragment by its string name.