12#ifndef TIMING_INCLUDE_TIMING_MIBV2IONODE_HPP_
13#define TIMING_INCLUDE_TIMING_MIBV2IONODE_HPP_
20#include "uhal/DerivedNode.hpp"
50 std::string
get_status(
bool print_out =
false)
const override;
55 void reset(
const std::string& clock_config_file)
const override;
70 std::string
get_sfp_status(uint32_t sfp_id,
bool print_out =
false)
const override;
85 void switch_sfp_tx(uint32_t sfp_id,
bool turn_on)
const override;
Base class for timing IO nodes.
Class for the timing FMC board.
void validate_sfp_id(uint32_t sfp_id) const
Fill hardware monitoring structure.
void switch_sfp_soft_tx_control_bit(uint32_t sfp_id, bool turn_on) const override
control tx laser of on-board SFP softly (I2C command)
void reset(const std::string &clock_config_file) const override
Reset MIB v2 IO.
std::string get_sfp_status(uint32_t sfp_id, bool print_out=false) const override
Print status of on-board SFP.
void switch_clock_source(const ClockSource &clock_source) const
Switch clock input, with clock file look up and upload if necessary.
std::string get_status(bool print_out=false) const override
Get status string, optionally print.
void switch_sfp_tx(uint32_t sfp_id, bool turn_on) const override
control tx laser of on-board SFP
MIBV2IONode(const uhal::Node &node)
bool clocks_ok() const override
Clocks ready?
void validate_amc_slot(uint32_t amc_slot) const
std::string get_uid_address_parameter_name() const override
Get the UID address parameter name.