DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
timing
include
timing
MIBV3IONode.hpp
Go to the documentation of this file.
1
11
12
#ifndef TIMING_INCLUDE_TIMING_MIBV3IONODE_HPP_
13
#define TIMING_INCLUDE_TIMING_MIBV3IONODE_HPP_
14
15
// PDT Headers
16
#include "
TimingIssues.hpp
"
17
#include "
timing/IONode.hpp
"
18
19
// uHal Headers
20
#include "uhal/DerivedNode.hpp"
21
22
// C++ Headers
23
#include <chrono>
24
#include <string>
25
26
namespace
dunedaq
{
27
namespace
timing
{
28
32
class
MIBV3IONode
:
public
IONode
33
{
34
UHAL_DERIVEDNODE(
MIBV3IONode
)
35
36
public
:
37
explicit
MIBV3IONode
(
const
uhal::Node& node);
38
virtual
~MIBV3IONode
();
39
45
std::string
get_uid_address_parameter_name
()
const override
;
46
50
std::string
get_status
(
bool
print_out =
false
)
const override
;
51
55
void
reset
(
const
std::string& clock_config_file)
const override
;
56
60
void
reset
(
const
ClockSource
& clock_source)
const override
;
61
65
void
reset_pll
()
const override
;
66
70
void
switch_clock_source
(
const
ClockSource
& clock_source)
const
;
71
75
std::string
get_sfp_status
(uint32_t sfp_id,
bool
print_out =
false
)
const override
;
// NOLINT(build/unsigned)
76
80
void
switch_sfp_soft_tx_control_bit
(uint32_t sfp_id,
bool
turn_on)
const override
;
// NOLINT(build/unsigned)
81
85
bool
clocks_ok
()
const override
;
86
90
void
switch_sfp_tx
(uint32_t sfp_id,
bool
turn_on)
const override
;
// NOLINT(build/unsigned)
91
95
//void get_info(timinghardwareinfo::TimingMIBV3MonitorData& mon_data) const;
96
100
// void get_info(opmonlib::InfoCollector& ci, int level) const override;
101
102
private
:
103
void
validate_sfp_id
(uint32_t sfp_id)
const
;
// NOLINT(build/unsigned)
104
void
validate_amc_slot
(uint32_t amc_slot)
const
;
// NOLINT(build/unsigned)
105
};
106
107
}
// namespace timing
108
}
// namespace dunedaq
109
110
#endif
// TIMING_INCLUDE_TIMING_MIBV3IONODE_HPP_
IONode.hpp
dunedaq::timing::IONode::IONode
IONode(const uhal::Node &node, std::string uid_i2c_bus, std::string pll_i2c_bus, std::string pll_i2c_device, std::vector< std::string > clock_names, std::vector< std::string > sfp_i2c_buses)
Definition
IONode.cpp:25
dunedaq::timing::MIBV3IONode::MIBV3IONode
MIBV3IONode(const uhal::Node &node)
Definition
MIBV3IONode.cpp:20
dunedaq::timing::MIBV3IONode::get_sfp_status
std::string get_sfp_status(uint32_t sfp_id, bool print_out=false) const override
Print status of on-board SFP.
Definition
MIBV3IONode.cpp:104
dunedaq::timing::MIBV3IONode::get_uid_address_parameter_name
std::string get_uid_address_parameter_name() const override
Get the UID address parameter name.
Definition
MIBV3IONode.cpp:32
dunedaq::timing::MIBV3IONode::get_status
std::string get_status(bool print_out=false) const override
Get status string, optionally print.
Definition
MIBV3IONode.cpp:40
dunedaq::timing::MIBV3IONode::reset
void reset(const std::string &clock_config_file) const override
Reset MIB v2 IO.
Definition
MIBV3IONode.cpp:55
dunedaq::timing::MIBV3IONode::validate_sfp_id
void validate_sfp_id(uint32_t sfp_id) const
Fill hardware monitoring structure.
Definition
MIBV3IONode.cpp:190
dunedaq::timing::MIBV3IONode::switch_clock_source
void switch_clock_source(const ClockSource &clock_source) const
Switch clock input, with clock file look up and upload if necessary.
Definition
MIBV3IONode.cpp:92
dunedaq::timing::MIBV3IONode::clocks_ok
bool clocks_ok() const override
Clocks ready?
Definition
MIBV3IONode.cpp:123
dunedaq::timing::MIBV3IONode::reset_pll
void reset_pll() const override
Reset PLL.
Definition
MIBV3IONode.cpp:85
dunedaq::timing::MIBV3IONode::switch_sfp_tx
void switch_sfp_tx(uint32_t sfp_id, bool turn_on) const override
control tx laser of on-board SFP
Definition
MIBV3IONode.cpp:149
dunedaq::timing::MIBV3IONode::~MIBV3IONode
virtual ~MIBV3IONode()
Definition
MIBV3IONode.cpp:27
dunedaq::timing::MIBV3IONode::validate_amc_slot
void validate_amc_slot(uint32_t amc_slot) const
Definition
MIBV3IONode.cpp:200
dunedaq::timing::MIBV3IONode::switch_sfp_soft_tx_control_bit
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)
Definition
MIBV3IONode.cpp:139
TimingIssues.hpp
dunedaq::timing
< Message parameters
Definition
BoreasDesign.hpp:29
dunedaq::timing::ClockSource
ClockSource
Definition
definitions.hpp:115
dunedaq
Including Qt Headers.
Definition
module.cpp:16
Generated on
for DUNE-DAQ by
1.17.0