7#ifndef TIMINGLIBS_INCLUDE_TIMINGLIBS_TIMINGHARDWAREINTERFACE_HPP_
8#define TIMINGLIBS_INCLUDE_TIMINGLIBS_TIMINGHARDWAREINTERFACE_HPP_
12#include "nlohmann/json.hpp"
14#include "uhal/ConnectionManager.hpp"
15#include "uhal/ProtocolUDP.hpp"
16#include "uhal/log/exception.hpp"
17#include "uhal/utilities/files.hpp"
48 template<
class TIMING_DEV> TIMING_DEV
cast_timing_device(
const uhal::Node* device_node, std::string timing_device_name);
50 void configure_uhal(
const std::string& uhal_log_level,
const std::string& connections_file);
TimingHardwareInterface sets up IPBus UHAL interface.
TimingHardwareInterface(const TimingHardwareInterface &)=delete
TimingHardwareInterface is not copy-constructible.
TIMING_DEV cast_timing_device(const uhal::Node *device_node, std::string timing_device_name)
std::unique_ptr< uhal::ConnectionManager > m_connection_manager
TimingHardwareInterface()
TimingHardwareInterface Constructor.
TimingHardwareInterface & operator=(TimingHardwareInterface &&)=delete
TimingHardwareInterface is not move-assignable.
void configure_uhal(const dunedaq::timinglibs::dal::TimingHardwareInterfaceConf *mdal)
std::string m_uhal_log_level
TimingHardwareInterface & operator=(const TimingHardwareInterface &)=delete
TimingHardwareInterface is not copy-assignable.
TimingHardwareInterface(TimingHardwareInterface &&)=delete
TimingHardwareInterface is not move-constructible.
std::string m_connections_file