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