1 #ifndef artdaq_core_Data_detail_RawFragmentHeaderV0_hh
2 #define artdaq_core_Data_detail_RawFragmentHeaderV0_hh
9 #include "artdaq-core/Data/dictionarycontrol.hh"
10 #include "cetlib/exception.h"
12 #include "artdaq-core/Data/detail/RawFragmentHeader.hh"
23 struct RawFragmentHeaderV0;
72 return std::map<type_t, std::string>{
85 return std::map<type_t, std::string>{
90 { 229,
"EndOfSubrun" },
123 constexpr
static std::size_t
num_words();
158 "sizeof(RawFragmentHeader) is not an integer "
159 "multiple of sizeof(RawDataType)!");
165 if (utype < FIRST_USER_TYPE || utype > LAST_USER_TYPE)
167 throw cet::exception(
"InvalidValue")
168 <<
"RawFragmentHeader user types must be in the range of "
169 << ((int)FIRST_USER_TYPE) <<
" to " << ((int)LAST_USER_TYPE)
170 <<
" (bad type is " << ((int)utype) <<
").";
179 if (stype < FIRST_SYSTEM_TYPE /*|| stype > LAST_SYSTEM_TYPE*/)
181 throw cet::exception(
"InvalidValue")
182 <<
"RawFragmentHeader system types must be in the range of "
183 << ((int)FIRST_SYSTEM_TYPE) <<
" to " << ((int)LAST_SYSTEM_TYPE);
190 artdaq::detail::RawFragmentHeaderV0::upgrade()
const