Line data Source code
1 : /**
2 : * @file EndpointNodeInterface.cpp
3 : *
4 : * This is part of the DUNE DAQ Software Suite, copyright 2020.
5 : * Licensing/copyright details are in the COPYING file that you should have
6 : * received with this code.
7 : */
8 :
9 : #include "timing/EndpointNodeInterface.hpp"
10 :
11 :
12 : #include <sstream>
13 : #include <string>
14 :
15 : namespace dunedaq::timing {
16 :
17 : //-----------------------------------------------------------------------------
18 0 : EndpointNodeInterface::EndpointNodeInterface(const uhal::Node& node)
19 0 : : TimingNode(node)
20 0 : {}
21 : //-----------------------------------------------------------------------------
22 :
23 : //-----------------------------------------------------------------------------
24 0 : EndpointNodeInterface::~EndpointNodeInterface()
25 0 : {}
26 : //-----------------------------------------------------------------------------
27 :
28 : //-----------------------------------------------------------------------------
29 : bool
30 0 : EndpointNodeInterface::endpoint_ready() const
31 : {
32 0 : auto ready_flag = getNode("csr.stat.ep_rdy").read();
33 0 : getClient().dispatch();
34 0 : return ready_flag.value();
35 0 : }
36 : //-----------------------------------------------------------------------------
37 :
38 : //-----------------------------------------------------------------------------
39 : uint32_t
40 0 : EndpointNodeInterface::read_endpoint_state() const
41 : {
42 0 : auto endpoint_state = getNode("csr.stat.ep_stat").read();
43 0 : getClient().dispatch();
44 0 : return endpoint_state.value();
45 0 : }
46 : //-----------------------------------------------------------------------------
47 :
48 : } // namespace dunedaq::timing
|