DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
TimingEndpointControllerBase.hpp
Go to the documentation of this file.
1
11
12#ifndef TIMINGLIBS_PLUGINS_TIMINGENDPOINTCONTROLLERBASE_HPP_
13#define TIMINGLIBS_PLUGINS_TIMINGENDPOINTCONTROLLERBASE_HPP_
14
16
19
20#include "appfwk/DAQModule.hpp"
21#include "ers/Issue.hpp"
22#include "logging/Logging.hpp"
24
25#include <memory>
26#include <string>
27#include <vector>
28
29namespace dunedaq {
30namespace timinglibs {
31
36class TimingEndpointControllerBase : public dunedaq::timinglibs::TimingController
37{
38public:
43 explicit TimingEndpointControllerBase(const std::string& name, uint number_hw_commands);
44
46 delete;
48 delete;
50 delete;
52 delete;
53
54protected:
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:
virtual void do_endpoint_disable(const CommandData_t &data)
TimingEndpointControllerBase & operator=(TimingEndpointControllerBase &&)=delete
TimingEndpointControllerBase is not move-assignable.
timingcmd::TimingHwCmd construct_endpoint_hw_cmd(const std::string &cmd_id, uint endpoint_id)
TimingEndpointControllerBase(TimingEndpointControllerBase &&)=delete
TimingEndpointControllerBase is not move-constructible.
TimingEndpointControllerBase & operator=(const TimingEndpointControllerBase &)=delete
TimingEndpointControllerBase is not copy-assignable.
TimingEndpointControllerBase(const std::string &name, uint number_hw_commands)
TimingEndpointControllerBase Constructor.
void send_configure_hardware_commands(const CommandData_t &data) override
TimingEndpointControllerBase(const TimingEndpointControllerBase &)=delete
TimingEndpointControllerBase is not copy-constructible.
The DUNE-DAQ namespace.