4static_assert(std::is_trivially_copyable<TriggerRecordHeaderData>::value,
5 "TriggerRecordHeaderData isn't trivially copyable and can't be safely std::memcpy'd");
8 std::is_standard_layout<TriggerRecordHeaderData>::value,
9 "TriggerRecordHeaderData isn't standard layout; reinterpret_cast and offsetof can't safely be used with it");
12 "This is intentionally designed to tell the developer to update the static_assert checks (including this "
13 "one) when the version is bumped");
15static_assert(
sizeof(
TriggerRecordHeaderData) == 64,
"TriggerRecordHeaderData struct size different than expected!");
17 "TriggerRecordHeaderData trigger_record_header_marker field not at expected offset!");
19 "TriggerRecordHeaderData version field not at expected offset!");
21 "TriggerRecordHeaderData trigger_number field not at expected offset!");
23 "TriggerRecordHeaderData trigger_timestamp field not at expected offset!");
25 "TriggerRecordHeaderData num_requested_components field not at expected offset!");
27 "TriggerRecordHeaderData run_number field not at expected offset!");
29 "TriggerRecordHeaderData status_bits field not at expected offset!");
31 "TriggerRecordHeaderData trigger_type field not at expected offset!");
33 "TriggerRecordHeaderData sequence_number field not at expected offset!");
35 "TriggerRecordHeaderData max_sequence_number field not at expected offset!");
37 "TriggerRecordHeaderData unused field not at expected offset!");
39 "TriggerRecordHeaderData source_id field not at expected offset!");
45 <<
"version: " << hdr.
version <<
", "
54 <<
", " <<
"element_id: { " << hdr.
element_id <<
" }";