86 auto triggerType = o2::raw::RDHUtils::getTriggerType(rdh);
87 auto headerSize = o2::raw::RDHUtils::getHeaderSize(rdh);
89 os << fmt::format(
"version {:03d} headerSize {:03d} triggerType {:08x} {:s}\n",
93 triggerTypeAsString(triggerType));
95 os << fmt::format(
"cruId {:03d} dpwId {:02d} linkId {:03d}\n",
96 o2::raw::RDHUtils::getCRUID(rdh),
97 o2::raw::RDHUtils::getEndPointID(rdh),
98 o2::raw::RDHUtils::getLinkID(rdh));
100 auto memorySize = o2::raw::RDHUtils::getMemorySize(rdh);
102 os << fmt::format(
"offsetToNext {:05d} memorySize {:05d} {:s}\n",
103 o2::raw::RDHUtils::getOffsetToNext(rdh),
105 memorySize == headerSize ?
"EMPTY" :
"");
107 os << fmt::format(
"heartbeatOrbit{:010d} heartbeatBC {:04d} feeId {:6d}\n",
108 o2::raw::RDHUtils::getHeartBeatOrbit(rdh),
109 o2::raw::RDHUtils::getHeartBeatBC(rdh),
110 o2::raw::RDHUtils::getFEEID(rdh));
112 auto stop = o2::raw::RDHUtils::getStop(rdh);
113 os << fmt::format(
"stopBit {:1d} pagesCounter {:03d} packetCounter {:03d} {:s}\n",
115 o2::raw::RDHUtils::getPageCounter(rdh),
116 o2::raw::RDHUtils::getPacketCounter(rdh),
131 buffer.emplace_back(std::byte{
static_cast<uint8_t
>((
w & UINT64_C(0x00000000000000FF)) >> 0)});
132 buffer.emplace_back(std::byte{
static_cast<uint8_t
>((
w & UINT64_C(0x000000000000FF00)) >> 8)});
133 buffer.emplace_back(std::byte{
static_cast<uint8_t
>((
w & UINT64_C(0x0000000000FF0000)) >> 16)});
134 buffer.emplace_back(std::byte{
static_cast<uint8_t
>((
w & UINT64_C(0x00000000FF000000)) >> 24)});
135 buffer.emplace_back(std::byte{
static_cast<uint8_t
>((
w & UINT64_C(0x000000FF00000000)) >> 32)});
136 buffer.emplace_back(std::byte{
static_cast<uint8_t
>((
w & UINT64_C(0x0000FF0000000000)) >> 40)});
137 buffer.emplace_back(std::byte{
static_cast<uint8_t
>((
w & UINT64_C(0x00FF000000000000)) >> 48)});
138 buffer.emplace_back(std::byte{
static_cast<uint8_t
>((
w & UINT64_C(0xFF00000000000000)) >> 56)});
217 assert(
buffer.size() % 4 == 0);
223 std::cout << (*reinterpret_cast<const RAWDataHeaderV4*>(rdhPtr)) <<
"\n";
226 std::cout << (*reinterpret_cast<const RAWDataHeaderV5*>(rdhPtr)) <<
"\n";
229 std::cout << (*reinterpret_cast<const RAWDataHeaderV6*>(rdhPtr)) <<
"\n";
232 std::cout << (*reinterpret_cast<const RAWDataHeaderV7*>(rdhPtr)) <<
"\n";
235 throw std::invalid_argument(fmt::format(
"RDH version {} not yet supported by showRDHs function",