DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
timing
src
UpstreamCDRNode.cpp
Go to the documentation of this file.
1
8
9
#include "
timing/UpstreamCDRNode.hpp
"
10
11
#include "
timing/TimingIssues.hpp
"
12
#include "
timing/toolbox.hpp
"
13
#include "
logging/Logging.hpp
"
14
15
#include <string>
16
#include <chrono>
17
18
namespace
dunedaq
{
19
namespace
timing
{
20
21
UHAL_REGISTER_DERIVED_NODE(
UpstreamCDRNode
)
22
23
//-----------------------------------------------------------------------------
24
UpstreamCDRNode
::
UpstreamCDRNode
(const
uhal
::Node& node)
25
:
TimingNode
(node)
26
{}
27
//-----------------------------------------------------------------------------
28
29
//-----------------------------------------------------------------------------
30
UpstreamCDRNode::~UpstreamCDRNode
() {}
31
//-----------------------------------------------------------------------------
32
33
//-----------------------------------------------------------------------------
34
std::string
35
UpstreamCDRNode::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
//-----------------------------------------------------------------------------
47
void
48
UpstreamCDRNode::resync
()
const
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
UpstreamCDRNode.hpp
dunedaq::timing::TimingNode::TimingNode
TimingNode(const uhal::Node &node)
Definition
TimingNode.cpp:18
dunedaq::timing::TimingNode::read_sub_nodes
std::map< std::string, uhal::ValWord< uint32_t > > read_sub_nodes(const uhal::Node &node, bool dispatch=true) const
Read subnodes.
Definition
TimingNode.cpp:29
dunedaq::timing::UpstreamCDRNode
Class for master global node.
Definition
UpstreamCDRNode.hpp:30
dunedaq::timing::UpstreamCDRNode::UpstreamCDRNode
UpstreamCDRNode(const uhal::Node &node)
Definition
UpstreamCDRNode.cpp:24
dunedaq::timing::UpstreamCDRNode::resync
void resync() const
Reync CDR.
Definition
UpstreamCDRNode.cpp:48
dunedaq::timing::UpstreamCDRNode::~UpstreamCDRNode
virtual ~UpstreamCDRNode()
Definition
UpstreamCDRNode.cpp:30
dunedaq::timing::UpstreamCDRNode::get_status
std::string get_status(bool print_out=false) const override
Get status string, optionally print.
Definition
UpstreamCDRNode.cpp:35
TimingIssues.hpp
Logging.hpp
TLOG
#define TLOG(...)
Definition
macro.hpp:22
dunedaq::timing
< Message parameters
Definition
BoreasDesign.hpp:29
dunedaq::timing::format_reg_table
std::string format_reg_table(T data, std::string title, std::vector< std::string > headers)
Format reg-value table.
Definition
toolbox.hxx:166
dunedaq
Including Qt Headers.
Definition
module.cpp:16
uhal
Definition
ProtocolAxi4Lite.hpp:63
toolbox.hpp
Generated on
for DUNE-DAQ by
1.17.0