DUNE-DAQ
DUNE Trigger and Data Acquisition software
|
Class for PDI timing master design on mux board. More...
#include <MasterMuxDesign.hpp>
Public Member Functions | |
MasterMuxDesign (const uhal::Node &node) | |
virtual | ~MasterMuxDesign () |
std::string | get_status (bool print_out=false) const override |
Get status string, optionally print. | |
uint32_t | measure_endpoint_rtt (uint32_t address, bool control_sfp=true, int sfp_mux=-1) const override |
Measure the endpoint round trip time. | |
void | apply_endpoint_delay (uint32_t address, uint32_t coarse_delay, uint32_t fine_delay, uint32_t phase_delay, bool measure_rtt=false, bool control_sfp=true, int sfp_mux=-1) const override |
Apply delay to endpoint. | |
std::vector< uint32_t > | scan_sfp_mux () const override |
Scan SFP for alive timing transmitters. | |
void | resync_active_cdr () const override |
Resync active cdr. | |
![]() | |
SFPMuxDesignInterface (const uhal::Node &node) | |
virtual | ~SFPMuxDesignInterface () |
void | switch_mux (uint8_t mux_channel, bool resync_cdr=false) const override |
Switch the SFP mux channel. | |
uint8_t | read_active_mux () const override |
Read the active SFP mux channel. | |
![]() | |
MuxDesignInterface (const uhal::Node &node) | |
virtual | ~MuxDesignInterface () |
![]() | |
TopDesignInterface (const uhal::Node &node) | |
virtual | ~TopDesignInterface () |
template<class IO > | |
const IO * | get_io_node () const |
![]() | |
TimingNode (const uhal::Node &node) | |
virtual | ~TimingNode () |
std::map< std::string, uhal::ValWord< uint32_t > > | read_sub_nodes (const uhal::Node &node, bool dispatch=true) const |
Read subnodes. | |
void | reset_sub_nodes (const uhal::Node &node, uint32_t aValue=0x0, bool dispatch=true) const |
Reset subnodes. | |
![]() | |
MasterDesign (const uhal::Node &node) | |
virtual | ~MasterDesign () |
void | configure (ClockSource clock_source, TimestampSource ts_source) const override |
Prepare the timing master for data taking. | |
uint64_t | read_master_timestamp () const override |
Read the current timestamp. | |
void | sync_timestamp (TimestampSource source) const override |
Sync timestamp to current machine value. | |
void | enable_periodic_fl_cmd (uint32_t channel, double rate, bool poisson=false) const override |
Configure fake trigger generator. | |
void | enable_periodic_fl_cmd (uint32_t command, uint32_t channel, double rate, bool poisson=false) const override |
Configure fake trigger generator. | |
const MasterNodeInterface * | get_master_node_plain () const override |
Get master node pointer. | |
uint32_t | read_firmware_version () const override |
Read master firmware version. | |
void | validate_firmware_version () const override |
Validate master firmware version. | |
void | get_info (timingfirmwareinfo::TimingDeviceInfo &mon_data) const override |
Give info to collector. | |
void | get_info (timingfirmwareinfo::MasterMonitorData &mon_data) const override |
Give info to collector. | |
![]() | |
TopDesign (const uhal::Node &node) | |
virtual | ~TopDesign () |
const IONode * | get_io_node_plain () const override |
Get io node pointer. | |
void | soft_reset_io () const override |
Reset timing node. | |
void | reset_io (const std::string &clock_config_file) const override |
Reset timing node. | |
void | reset_io (const ClockSource &clock_source) const override |
Reset timing node. | |
void | configure (ClockSource clock_source) const override |
Prepare the timing device for data taking. | |
std::string | get_hardware_info (bool print_out=false) const override |
Print hardware information. | |
void | get_info (timingfirmwareinfo::TimingDeviceInfo &mon_data) const override |
Give info to collector. | |
![]() | |
MasterDesignInterface (const uhal::Node &node) | |
virtual | ~MasterDesignInterface () |
template<class MST > | |
const MST * | get_master_node () const |
virtual void | get_info (timingfirmwareinfo::TimingDeviceInfo &mon_data) const=0 |
Give info to collector. | |
Class for PDI timing master design on mux board.
Definition at line 34 of file MasterMuxDesign.hpp.
|
explicit |
Definition at line 11 of file MasterMuxDesign.cpp.
|
virtual |
Definition at line 21 of file MasterMuxDesign.cpp.
|
overridevirtual |
Apply delay to endpoint.
Reimplemented from dunedaq::timing::MasterDesign.
Definition at line 61 of file MasterMuxDesign.cpp.
|
overridevirtual |
Get status string, optionally print.
Implements dunedaq::timing::TimingNode.
Reimplemented in dunedaq::timing::OuroborosMuxDesign.
Definition at line 27 of file MasterMuxDesign.cpp.
|
overridevirtual |
Measure the endpoint round trip time.
Reimplemented from dunedaq::timing::MasterDesign.
Definition at line 41 of file MasterMuxDesign.cpp.
|
overridevirtual |
Resync active cdr.
Implements dunedaq::timing::MuxDesignInterface.
Definition at line 122 of file MasterMuxDesign.cpp.
|
overridevirtual |
Scan SFP for alive timing transmitters.
Implements dunedaq::timing::SFPMuxDesignInterface.
Definition at line 88 of file MasterMuxDesign.cpp.