DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
dunedaq::fddetdataformats::CRTBernFrame Class Reference

Class for accessing/holding raw CRT data from the 'Bern' panels ProtoDUNE-II VD. More...

#include <CRTBernFrame.hpp>

Collaboration diagram for dunedaq::fddetdataformats::CRTBernFrame:
[legend]

Classes

struct  CRTBernData
 

Public Types

typedef uint64_t word_t
 

Public Member Functions

uint16_t get_adc (int i_ch) const
 Get the adc value for channel i_ch.
 
void set_adc (int i_ch, uint16_t val)
 Set the adc value for channel i_ch to val.
 
uint64_t get_timestamp () const
 Get the starting 64-bit timestamp of the frame.
 
void set_timestamp (const uint64_t new_timestamp)
 Set the starting 64-bit timestamp of the frame also set the underlying ts0 to be consistent.
 
uint16_t get_mac5 () const
 Get the MAC5 identifier of the frame.
 
void set_mac5 (const uint16_t new_mac5)
 Set the MAC5 identifier of the frame.
 
uint16_t get_flags () const
 Get the flags field of the CRTBernData.
 
void set_flags (const uint16_t new_flags)
 Set the flags field of the CRTBernData.
 
uint16_t get_lostcpu () const
 Get the lostcpu counter of the CRTBernData.
 
void set_lostcpu (const uint16_t new_lostcpu)
 Set the lostcpu counter of the CRTBernData.
 
uint16_t get_lostfpga () const
 Get the lostfpga counter of the CRTBernData.
 
void set_lostfpga (const uint16_t new_lostfpga)
 Set the lostfpga counter of the CRTBernData.
 
uint32_t get_ts0 () const
 Get the ts0 timestamp of the CRTBernData.
 
void set_ts0 (const uint32_t new_ts0)
 Set the ts0 timestamp of the CRTBernData.
 
uint32_t get_ts1 () const
 Get the ts1 timestamp of the CRTBernData.
 
void set_ts1 (const uint32_t new_ts1)
 Set the ts1 timestamp of the CRTBernData.
 
uint32_t get_coinc () const
 Get the coinc counter of the CRTBernData.
 
void set_coinc (const uint32_t new_coinc)
 Set the coinc counter of the CRTBernData.
 

Public Attributes

detdataformats::DAQEthHeader daq_header
 
uint16_t mac5
 
CRTBernData data
 

Static Public Attributes

static constexpr int s_num_channels = 32
 
static constexpr uint64_t s_DTS_ticks_per_second = 62'500'000
 
static constexpr uint64_t s_ns_per_DTS_tick = 16
 
static constexpr int s_bits_per_adc = 16
 
static constexpr int s_bits_per_word = 8 * sizeof(word_t)
 
static constexpr int s_num_adcs = 64
 

Detailed Description

Class for accessing/holding raw CRT data from the 'Bern' panels ProtoDUNE-II VD.

Definition at line 28 of file CRTBernFrame.hpp.

Member Typedef Documentation

◆ word_t

Member Function Documentation

◆ get_adc()

uint16_t dunedaq::fddetdataformats::CRTBernFrame::get_adc ( int i_ch) const
inline

Get the adc value for channel i_ch.

Definition at line 71 of file CRTBernFrame.hpp.

72 {
73 if (i_ch < 0 || i_ch >= s_num_channels)
74 throw std::out_of_range("ADC channel index out of range");
75
76 return data.adc[i_ch];
77 }

◆ get_coinc()

uint32_t dunedaq::fddetdataformats::CRTBernFrame::get_coinc ( ) const
inline

Get the coinc counter of the CRTBernData.

Definition at line 193 of file CRTBernFrame.hpp.

◆ get_flags()

uint16_t dunedaq::fddetdataformats::CRTBernFrame::get_flags ( ) const
inline

Get the flags field of the CRTBernData.

Definition at line 122 of file CRTBernFrame.hpp.

123 {
124 return data.flags; // NOLINT(build/unsigned)
125 }

◆ get_lostcpu()

uint16_t dunedaq::fddetdataformats::CRTBernFrame::get_lostcpu ( ) const
inline

Get the lostcpu counter of the CRTBernData.

Definition at line 136 of file CRTBernFrame.hpp.

137 {
138 return data.lostcpu; // NOLINT(build/unsigned)
139 }

◆ get_lostfpga()

uint16_t dunedaq::fddetdataformats::CRTBernFrame::get_lostfpga ( ) const
inline

Get the lostfpga counter of the CRTBernData.

Definition at line 150 of file CRTBernFrame.hpp.

151 {
152 return data.lostfpga; // NOLINT(build/unsigned)
153 }

◆ get_mac5()

uint16_t dunedaq::fddetdataformats::CRTBernFrame::get_mac5 ( ) const
inline

Get the MAC5 identifier of the frame.

Definition at line 108 of file CRTBernFrame.hpp.

109 {
110 return mac5 ; // NOLINT(build/unsigned)
111 }

◆ get_timestamp()

uint64_t dunedaq::fddetdataformats::CRTBernFrame::get_timestamp ( ) const
inline

Get the starting 64-bit timestamp of the frame.

Definition at line 92 of file CRTBernFrame.hpp.

93 {
94 return daq_header.get_timestamp() ; // NOLINT(build/unsigned)
95 }
detdataformats::DAQEthHeader daq_header

◆ get_ts0()

uint32_t dunedaq::fddetdataformats::CRTBernFrame::get_ts0 ( ) const
inline

Get the ts0 timestamp of the CRTBernData.

Definition at line 164 of file CRTBernFrame.hpp.

◆ get_ts1()

uint32_t dunedaq::fddetdataformats::CRTBernFrame::get_ts1 ( ) const
inline

Get the ts1 timestamp of the CRTBernData.

Definition at line 178 of file CRTBernFrame.hpp.

◆ set_adc()

void dunedaq::fddetdataformats::CRTBernFrame::set_adc ( int i_ch,
uint16_t val )
inline

Set the adc value for channel i_ch to val.

Definition at line 82 of file CRTBernFrame.hpp.

83 {
84 if (i_ch < 0 || i_ch >= s_num_channels)
85 throw std::out_of_range("ADC channel index out of range");
86
87 data.adc[i_ch]=val;
88 }

◆ set_coinc()

void dunedaq::fddetdataformats::CRTBernFrame::set_coinc ( const uint32_t new_coinc)
inline

Set the coinc counter of the CRTBernData.

Definition at line 200 of file CRTBernFrame.hpp.

201 {
202 data.coinc = new_coinc;
203 }

◆ set_flags()

void dunedaq::fddetdataformats::CRTBernFrame::set_flags ( const uint16_t new_flags)
inline

Set the flags field of the CRTBernData.

Definition at line 129 of file CRTBernFrame.hpp.

130 {
131 data.flags = new_flags;
132 }

◆ set_lostcpu()

void dunedaq::fddetdataformats::CRTBernFrame::set_lostcpu ( const uint16_t new_lostcpu)
inline

Set the lostcpu counter of the CRTBernData.

Definition at line 143 of file CRTBernFrame.hpp.

144 {
145 data.lostcpu = new_lostcpu;
146 }

◆ set_lostfpga()

void dunedaq::fddetdataformats::CRTBernFrame::set_lostfpga ( const uint16_t new_lostfpga)
inline

Set the lostfpga counter of the CRTBernData.

Definition at line 157 of file CRTBernFrame.hpp.

158 {
159 data.lostfpga = new_lostfpga;
160 }

◆ set_mac5()

void dunedaq::fddetdataformats::CRTBernFrame::set_mac5 ( const uint16_t new_mac5)
inline

Set the MAC5 identifier of the frame.

Definition at line 115 of file CRTBernFrame.hpp.

116 {
117 mac5 = new_mac5;
118 }

◆ set_timestamp()

void dunedaq::fddetdataformats::CRTBernFrame::set_timestamp ( const uint64_t new_timestamp)
inline

Set the starting 64-bit timestamp of the frame also set the underlying ts0 to be consistent.

Definition at line 100 of file CRTBernFrame.hpp.

101 {
102 daq_header.timestamp = new_timestamp;
103 data.ts0 = (new_timestamp % s_DTS_ticks_per_second) * s_ns_per_DTS_tick;
104 }
static constexpr uint64_t s_ns_per_DTS_tick
static constexpr uint64_t s_DTS_ticks_per_second

◆ set_ts0()

void dunedaq::fddetdataformats::CRTBernFrame::set_ts0 ( const uint32_t new_ts0)
inline

Set the ts0 timestamp of the CRTBernData.

Definition at line 171 of file CRTBernFrame.hpp.

172 {
173 data.ts0 = new_ts0;
174 }

◆ set_ts1()

void dunedaq::fddetdataformats::CRTBernFrame::set_ts1 ( const uint32_t new_ts1)
inline

Set the ts1 timestamp of the CRTBernData.

Definition at line 185 of file CRTBernFrame.hpp.

186 {
187 data.ts1 = new_ts1;
188 }

Member Data Documentation

◆ daq_header

detdataformats::DAQEthHeader dunedaq::fddetdataformats::CRTBernFrame::daq_header

Definition at line 60 of file CRTBernFrame.hpp.

◆ data

CRTBernData dunedaq::fddetdataformats::CRTBernFrame::data

Definition at line 62 of file CRTBernFrame.hpp.

◆ mac5

uint16_t dunedaq::fddetdataformats::CRTBernFrame::mac5

Definition at line 61 of file CRTBernFrame.hpp.

◆ s_bits_per_adc

int dunedaq::fddetdataformats::CRTBernFrame::s_bits_per_adc = 16
staticconstexpr

Definition at line 42 of file CRTBernFrame.hpp.

◆ s_bits_per_word

int dunedaq::fddetdataformats::CRTBernFrame::s_bits_per_word = 8 * sizeof(word_t)
staticconstexpr

Definition at line 43 of file CRTBernFrame.hpp.

◆ s_DTS_ticks_per_second

uint64_t dunedaq::fddetdataformats::CRTBernFrame::s_DTS_ticks_per_second = 62'500'000
staticconstexpr

Definition at line 39 of file CRTBernFrame.hpp.

◆ s_ns_per_DTS_tick

uint64_t dunedaq::fddetdataformats::CRTBernFrame::s_ns_per_DTS_tick = 16
staticconstexpr

Definition at line 40 of file CRTBernFrame.hpp.

◆ s_num_adcs

int dunedaq::fddetdataformats::CRTBernFrame::s_num_adcs = 64
staticconstexpr

Definition at line 44 of file CRTBernFrame.hpp.

◆ s_num_channels

int dunedaq::fddetdataformats::CRTBernFrame::s_num_channels = 32
staticconstexpr

Definition at line 38 of file CRTBernFrame.hpp.


The documentation for this class was generated from the following file: