DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
timinglibs
include
timinglibs
TimingEndpointControllerBase.hpp
Go to the documentation of this file.
1
11
12
#ifndef TIMINGLIBS_PLUGINS_TIMINGENDPOINTCONTROLLERBASE_HPP_
13
#define TIMINGLIBS_PLUGINS_TIMINGENDPOINTCONTROLLERBASE_HPP_
14
15
#include "
timinglibs/TimingController.hpp
"
16
17
#include "
timinglibs/timingcmd/Nljs.hpp
"
18
#include "
timinglibs/timingcmd/Structs.hpp
"
19
20
#include "
appfwk/DAQModule.hpp
"
21
#include "
ers/Issue.hpp
"
22
#include "
logging/Logging.hpp
"
23
#include "
utilities/WorkerThread.hpp
"
24
25
#include <memory>
26
#include <string>
27
#include <vector>
28
29
namespace
dunedaq
{
30
namespace
timinglibs
{
31
36
class
TimingEndpointControllerBase
:
public
dunedaq::timinglibs::TimingController
37
{
38
public
:
43
explicit
TimingEndpointControllerBase
(
const
std::string& name, uint number_hw_commands);
44
45
TimingEndpointControllerBase
(
const
TimingEndpointControllerBase
&) =
46
delete
;
47
TimingEndpointControllerBase
&
operator=
(
const
TimingEndpointControllerBase
&) =
48
delete
;
49
TimingEndpointControllerBase
(
TimingEndpointControllerBase
&&) =
50
delete
;
51
TimingEndpointControllerBase
&
operator=
(
TimingEndpointControllerBase
&&) =
52
delete
;
53
54
protected
:
55
uint
m_managed_endpoint_id
;
56
57
// Commands
58
void
do_configure
(
const
CommandData_t& data)
override
;
59
void
send_configure_hardware_commands
(
const
CommandData_t& data)
override
;
60
61
timingcmd::TimingHwCmd
construct_endpoint_hw_cmd
(
const
std::string& cmd_id, uint endpoint_id);
62
63
// timinglibs endpoint commands
64
virtual
void
do_endpoint_enable
(
const
CommandData_t& data);
65
virtual
void
do_endpoint_disable
(
const
CommandData_t& data);
66
virtual
void
do_endpoint_reset
(
const
CommandData_t& data);
67
68
// pass op mon info
69
void
process_device_info
(nlohmann::json info)
override
;
70
std::atomic<uint>
m_endpoint_state
;
71
};
72
}
// namespace timinglibs
73
}
// namespace dunedaq
74
75
#endif
// TIMINGLIBS_PLUGINS_TIMINGENDPOINTCONTROLLERBASE_HPP_
76
77
// Local Variables:
78
// c-basic-offset: 2
79
// End:
DAQModule.hpp
Issue.hpp
WorkerThread.hpp
dunedaq::timinglibs::TimingEndpointControllerBase::do_endpoint_disable
virtual void do_endpoint_disable(const CommandData_t &data)
Definition
TimingEndpointControllerBase.cpp:96
dunedaq::timinglibs::TimingEndpointControllerBase::operator=
TimingEndpointControllerBase & operator=(TimingEndpointControllerBase &&)=delete
TimingEndpointControllerBase is not move-assignable.
dunedaq::timinglibs::TimingEndpointControllerBase::do_configure
void do_configure(const CommandData_t &data) override
Definition
TimingEndpointControllerBase.cpp:45
dunedaq::timinglibs::TimingEndpointControllerBase::construct_endpoint_hw_cmd
timingcmd::TimingHwCmd construct_endpoint_hw_cmd(const std::string &cmd_id, uint endpoint_id)
Definition
TimingEndpointControllerBase.cpp:68
dunedaq::timinglibs::TimingEndpointControllerBase::TimingEndpointControllerBase
TimingEndpointControllerBase(TimingEndpointControllerBase &&)=delete
TimingEndpointControllerBase is not move-constructible.
dunedaq::timinglibs::TimingEndpointControllerBase::process_device_info
void process_device_info(nlohmann::json info) override
Definition
TimingEndpointControllerBase.cpp:129
dunedaq::timinglibs::TimingEndpointControllerBase::operator=
TimingEndpointControllerBase & operator=(const TimingEndpointControllerBase &)=delete
TimingEndpointControllerBase is not copy-assignable.
dunedaq::timinglibs::TimingEndpointControllerBase::do_endpoint_reset
virtual void do_endpoint_reset(const CommandData_t &data)
Definition
TimingEndpointControllerBase.cpp:104
dunedaq::timinglibs::TimingEndpointControllerBase::TimingEndpointControllerBase
TimingEndpointControllerBase(const std::string &name, uint number_hw_commands)
TimingEndpointControllerBase Constructor.
Definition
TimingEndpointControllerBase.cpp:34
dunedaq::timinglibs::TimingEndpointControllerBase::m_managed_endpoint_id
uint m_managed_endpoint_id
Definition
TimingEndpointControllerBase.hpp:55
dunedaq::timinglibs::TimingEndpointControllerBase::send_configure_hardware_commands
void send_configure_hardware_commands(const CommandData_t &data) override
Definition
TimingEndpointControllerBase.cpp:60
dunedaq::timinglibs::TimingEndpointControllerBase::TimingEndpointControllerBase
TimingEndpointControllerBase(const TimingEndpointControllerBase &)=delete
TimingEndpointControllerBase is not copy-constructible.
dunedaq::timinglibs::TimingEndpointControllerBase::do_endpoint_enable
virtual void do_endpoint_enable(const CommandData_t &data)
Definition
TimingEndpointControllerBase.cpp:82
dunedaq::timinglibs::TimingEndpointControllerBase::m_endpoint_state
std::atomic< uint > m_endpoint_state
Definition
TimingEndpointControllerBase.hpp:70
Logging.hpp
dunedaq::timinglibs
Definition
TimingController.hxx:1
dunedaq
The DUNE-DAQ namespace.
Definition
cib_utilities.cpp:5
TimingController.hpp
dunedaq::timinglibs::timingcmd::TimingHwCmd
Definition
Structs.hpp:122
Nljs.hpp
Structs.hpp
Generated on
for DUNE-DAQ by
1.18.0