LCOV - code coverage report
Current view: top level - timing/src - GaiaDesign.cpp (source / functions) Coverage Total Hit
Test: code.result Lines: 0.0 % 23 0
Test Date: 2026-02-16 10:18:04 Functions: 0.0 % 7 0

            Line data    Source code
       1              : #include "timing/GaiaDesign.hpp"
       2              : 
       3              : #include "timing/IRIGTimestampNode.hpp"
       4              : 
       5              : #include <sstream>
       6              : #include <string>
       7              : 
       8              : namespace dunedaq::timing {
       9              : 
      10            0 : UHAL_REGISTER_DERIVED_NODE(GaiaDesign)
      11              : 
      12              : //-----------------------------------------------------------------------------
      13            0 : GaiaDesign::GaiaDesign(const uhal::Node& node)
      14              :   : TopDesignInterface(node)
      15              :   , MasterDesignInterface(node)
      16              :   , MuxDesignInterface(node)
      17              :   , MasterDesign(node)
      18              :   , EndpointDesignInterface(node)
      19            0 :   , CDRMuxDesignInterface(node)
      20            0 : {}
      21              : //-----------------------------------------------------------------------------
      22              : 
      23              : //-----------------------------------------------------------------------------
      24            0 : GaiaDesign::~GaiaDesign()
      25            0 : {}
      26              : //-----------------------------------------------------------------------------
      27              : 
      28              : //-----------------------------------------------------------------------------
      29              : std::string
      30            0 : GaiaDesign::get_status(bool print_out) const
      31              : {
      32            0 :   std::stringstream status;
      33            0 :   status << get_io_node_plain()->get_pll_status();
      34            0 :   status << MasterDesign::get_master_node_plain()->get_status();
      35              :   // TODO fanout specific status
      36            0 :   if (print_out)
      37            0 :     TLOG() << status.str();
      38            0 :   return status.str();
      39            0 : }
      40              : //-----------------------------------------------------------------------------
      41              : 
      42              : //-----------------------------------------------------------------------------
      43              : void
      44            0 : GaiaDesign::configure(ClockSource clock_source, TimestampSource ts_source, TimestampTimebase timebase) const
      45              : {
      46            0 :   TopDesign::configure(clock_source);
      47              : 
      48            0 :   getNode<IRIGTimestampNode>("irig_time_source").set_ts_timebase(timebase);
      49              : 
      50              :   // TODO temporary, wait for irig lock and date
      51            0 :   std::this_thread::sleep_for(std::chrono::milliseconds(1000));
      52              : 
      53            0 :   this->sync_timestamp(ts_source);
      54            0 : }
      55              : //-----------------------------------------------------------------------------
      56              : 
      57              : //-----------------------------------------------------------------------------
      58              : void
      59            0 : GaiaDesign::get_info(timingfirmwareinfo::TimingDeviceInfo& mon_data) const
      60              : {
      61            0 :   MasterDesign::get_info(mon_data);
      62              :   //EndpointDesignInterface::get_info(0, mon_data.endpoint_info);
      63            0 : }
      64              : //-----------------------------------------------------------------------------
      65              : 
      66              : }
        

Generated by: LCOV version 2.0-1