DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
UpstreamCDRNode.cpp
Go to the documentation of this file.
1
10
12#include "timing/toolbox.hpp"
13#include "logging/Logging.hpp"
14
15#include <string>
16#include <chrono>
17
18namespace dunedaq {
19namespace timing {
20
21UHAL_REGISTER_DERIVED_NODE(UpstreamCDRNode)
22
23//-----------------------------------------------------------------------------
25 : TimingNode(node)
26{}
27//-----------------------------------------------------------------------------
28
29//-----------------------------------------------------------------------------
31//-----------------------------------------------------------------------------
32
33//-----------------------------------------------------------------------------
34std::string
35UpstreamCDRNode::get_status(bool print_out) const
36{
37 std::stringstream status;
38 auto subnodes = read_sub_nodes(getNode("stat"));
39 status << format_reg_table(subnodes, "Upstream CDR state");
40 if (print_out)
41 TLOG() << status.str();
42 return status.str();
43}
44//-----------------------------------------------------------------------------
45
46//-----------------------------------------------------------------------------
47void
49{
50 getNode("ctrl.resync").write(0x1);
51 getNode("ctrl.resync").write(0x0);
52 getClient().dispatch();
53}
54//-----------------------------------------------------------------------------
55
56} // namespace timing
57} // namespace dunedaq
Base class for timing nodes.
std::map< std::string, uhal::ValWord< uint32_t > > read_sub_nodes(const uhal::Node &node, bool dispatch=true) const
Read subnodes.
Class for master global node.
std::string get_status(bool print_out=false) const override
Get status string, optionally print.
#define TLOG(...)
Definition macro.hpp:22
std::string format_reg_table(T data, std::string title, std::vector< std::string > headers)
Format reg-value table.
Definition toolbox.hxx:166
Including Qt Headers.