LCOV - code coverage report
Current view: top level - timinglibs/plugins - TimingFanoutController.hpp (source / functions) Coverage Total Hit
Test: code.result Lines: 0.0 % 1 0
Test Date: 2025-12-21 13:07:08 Functions: 0.0 % 8 0

            Line data    Source code
       1              : /**
       2              :  * @file TimingFanoutController.hpp
       3              :  *
       4              :  * TimingFanoutController is a DAQModule implementation that
       5              :  * provides a control interface for timing master hardware.
       6              :  *
       7              :  * This is part of the DUNE DAQ Software Suite, copyright 2020.
       8              :  * Licensing/copyright details are in the COPYING file that you should have
       9              :  * received with this code.
      10              :  */
      11              : 
      12              : #ifndef TIMINGLIBS_PLUGINS_TIMINGFANOUTCONTROLLER_HPP_
      13              : #define TIMINGLIBS_PLUGINS_TIMINGFANOUTCONTROLLER_HPP_
      14              : 
      15              : #include "timinglibs/TimingEndpointControllerBase.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" // NOTE: if ISSUES ARE DECLARED BEFORE include logging/Logging.hpp, TLOG_DEBUG<<issue wont work.
      23              : #include "utilities/WorkerThread.hpp"
      24              : 
      25              : #include <memory>
      26              : #include <string>
      27              : #include <vector>
      28              : 
      29              : namespace dunedaq {
      30            0 : ERS_DECLARE_ISSUE(timinglibs,                                                                             ///< Namespace
      31              :                 TimingFanoutNotReady,                                                                   ///< Issue class name
      32              :                 fanout << " timing fanout did not become ready in time.", ///< Message
      33              :                 ((std::string)fanout) )                                                                   ///< Message parameters
      34              : namespace timinglibs {
      35              : 
      36              : /**
      37              :  * @brief TimingFanoutController is a DAQModule implementation that
      38              :  * provides a control interface for timing master hardware.
      39              :  */
      40              : class TimingFanoutController : public dunedaq::timinglibs::TimingEndpointControllerBase
      41              : {
      42              : public:
      43              :   /**
      44              :    * @brief TimingFanoutController Constructor
      45              :    * @param name Instance name for this TimingFanoutController instance
      46              :    */
      47              :   explicit TimingFanoutController(const std::string& name);
      48              : 
      49              :   TimingFanoutController(const TimingFanoutController&) = delete; ///< TimingFanoutController is not copy-constructible
      50              :   TimingFanoutController& operator=(const TimingFanoutController&) =
      51              :     delete;                                                  ///< TimingFanoutController is not copy-assignable
      52              :   TimingFanoutController(TimingFanoutController&&) = delete; ///< TimingFanoutController is not move-constructible
      53              :   TimingFanoutController& operator=(TimingFanoutController&&) =
      54              :     delete; ///< TimingFanoutController is not move-assignable
      55              : 
      56              : protected:
      57              :   // Commands
      58              :   void do_configure(const CommandData_t&) override;
      59              :   void send_configure_hardware_commands(const CommandData_t& data) override;
      60              : 
      61              :   timingcmd::TimingHwCmd construct_fanout_hw_cmd(const std::string& cmd_id);
      62              : 
      63              :   // pass op mon info
      64              :   void process_device_info(nlohmann::json info) override;
      65              : };
      66              : } // namespace timinglibs
      67              : } // namespace dunedaq
      68              : 
      69              : #endif // TIMINGLIBS_PLUGINS_TIMINGFANOUTCONTROLLER_HPP_
      70              : 
      71              : // Local Variables:
      72              : // c-basic-offset: 2
      73              : // End:
        

Generated by: LCOV version 2.0-1