12#ifndef TIMING_INCLUDE_TIMING_FMCIONODE_HPP_
13#define TIMING_INCLUDE_TIMING_FMCIONODE_HPP_
20#include "uhal/DerivedNode.hpp"
37 explicit FMCIONode(
const uhal::Node& node);
50 std::string
get_status(
bool print_out =
false)
const override;
55 void reset(
const std::string& clock_config_file)
const override;
80 void switch_sfp_tx(uint32_t sfp_id,
bool turn_on)
const override;
Class for the timing FMC board.
bool clocks_ok() const override
Clocks ready?
FMCIONode(const uhal::Node &node)
std::string get_uid_address_parameter_name() const override
Get the UID address parameter name.
std::string get_clock_frequencies_table(bool print_out=false) const override
Print frequencies of on-board clocks.
std::string get_status(bool print_out=false) const override
Get status string, optionally print.
std::vector< double > read_clock_frequencies() const override
Read frequencies of on-board clocks.
void validate_sfp_id(uint32_t sfp_id) const
Fill hardware monitoring structure.
void reset(const std::string &clock_config_file) const override
Reset FMC IO.
void switch_sfp_tx(uint32_t sfp_id, bool turn_on) const override
control tx laser of on-board SFP
Base class for timing IO nodes.
virtual void reset(const std::string &clock_config_file) const =0
Reset timing node.