artdaq_core_demo  v1_07_01
ToyFragment.cc
1 #include "artdaq-core-demo/Overlays/ToyFragment.hh"
2 
3 #include "cetlib_except/exception.h"
4 
5 #if 0
6 namespace {
7  unsigned int pop_count (unsigned int n) {
8  unsigned int c;
9  for (c = 0; n; c++) n &= n - 1;
10  return c;
11  }
12 }
13 #endif
14 
15 void demo::ToyFragment::checkADCData(int daq_adc_bits) const
16 {
17  demo::ToyFragment::adc_t const* adcPtr(findBadADC(daq_adc_bits));
18  if (adcPtr != dataEndADCs())
19  {
20  throw cet::exception("IllegalADCVal") // NOLINT(cert-err60-cpp)
21  << "Illegal value of ADC word #" << (adcPtr - dataBeginADCs()) << ": 0x" << std::hex << *adcPtr << ".";
22  }
23 }
24 
25 std::ostream& demo::operator<<(std::ostream& os, ToyFragment const& f)
26 {
27  os << "ToyFragment event size: " << f.hdr_event_size() << ", trigger number: " << f.hdr_trigger_number() << "\n";
28 
29  return os;
30 }
std::ostream & operator<<(std::ostream &, AsciiFragment const &)
Dumps the AsciiFragment&#39;s data (text) to given stream.
Header::trigger_number_t hdr_trigger_number() const
Gets the trigger_number from the ToyFragment::Header.
Definition: ToyFragment.hh:123
adc_t const * findBadADC(int daq_adc_bits) const
Look through stored ADC values and determine if any are out-of-range.
Definition: ToyFragment.hh:187
An artdaq::Fragment overlay class used for pedagogical purposes.
Definition: ToyFragment.hh:25
Header::event_size_t hdr_event_size() const
Gets the event_size from the ToyFragment::Header.
Definition: ToyFragment.hh:118
adc_t const * dataBeginADCs() const
Start of the ADC values, returned as a const pointer to the ADC type.
Definition: ToyFragment.hh:162
uint16_t adc_t
ToyFragment is intended to represent/interpret data that has an inherent size of 16 bits (unsigned)...
Definition: ToyFragment.hh:61
void checkADCData(int daq_adc_bits) const
Throw if any ADC value appears corrupt.
Definition: ToyFragment.cc:15
adc_t const * dataEndADCs() const
End of the ADC values, returned as a const pointer to the ADC type.
Definition: ToyFragment.hh:171