mu2e_artdaq_core  v1_02_10
 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 {
9  if(index < getPacketCount()) {
10  return &(data_[index]);
11  }
12 
13  return nullptr;
14 }
15 
16 uint16_t mu2e::DataBlock::getPacketCount()
17 {
18  return (*header_)[4] + ((*header_)[5] << 8);
19 }
20 
21 uint8_t mu2e::DataBlock::getROCID()
22 {
23  return ((*header_)[0] & 0xF) + (((*header_)[1] & 0xF) << 4);
24 }