mu2e_artdaq_core  v1_02_24
 All Classes Functions
DataBlock.cc
1 #include "mu2e-artdaq-core/Overlays/DataBlock.hh"
2 
3 mu2e::DataBlock::DataBlock()
4  : header_(nullptr), data_(nullptr) {}
5 
6 mu2e::DataBlock::DataBlock(mu2e::packet_t* ptr)
7  : header_(ptr), data_(ptr + 1) {}
8 
9 mu2e::packet_t* mu2e::DataBlock::dataPacket(uint16_t index)
10 {
11  if (index < getPacketCount()) {
12  return &(data_[index]);
13  }
14 
15  return nullptr;
16 }
17 
18 uint16_t mu2e::DataBlock::getPacketCount() { return (*header_)[4] + ((*header_)[5] << 8); }
19 
20 uint8_t mu2e::DataBlock::getROCID() { return ((*header_)[0] & 0xF) + (((*header_)[1] & 0xF) << 4); }