DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
timing
include
timing
TLUIONode.hpp
Go to the documentation of this file.
1
11
12
#ifndef TIMING_INCLUDE_TIMING_TLUIONODE_HPP_
13
#define TIMING_INCLUDE_TIMING_TLUIONODE_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
#include <vector>
26
27
namespace
dunedaq
{
28
namespace
timing
{
29
33
class
TLUIONode
:
public
IONode
34
{
35
UHAL_DERIVEDNODE(
TLUIONode
)
36
37
public
:
38
explicit
TLUIONode
(
const
uhal::Node& node);
39
virtual
~TLUIONode
();
40
46
std::string
get_uid_address_parameter_name
()
const override
;
47
51
std::string
get_status
(
bool
print_out =
false
)
const
;
52
56
void
reset
(
const
std::string& clock_config_file)
const override
;
57
61
using
IONode::reset
;
62
66
void
reset_pll
()
const override
;
67
71
void
configure_dac
(uint32_t dac_id, uint32_t dac_value,
bool
internal_ref =
false
)
const
;
// NOLINT(build/unsigned)
72
76
std::string
get_sfp_status
(uint32_t sfp_id,
bool
print_out =
false
)
const override
;
// NOLINT(build/unsigned)
77
81
bool
clocks_ok
()
const override
;
82
86
void
switch_sfp_soft_tx_control_bit
(uint32_t,
bool
)
const override
;
// NOLINT(build/unsigned)
87
91
void
switch_sfp_tx
(uint32_t,
bool
)
const override
;
// NOLINT(build/unsigned)
92
93
// /**
94
// * @brief Fill hardware monitoring structure.
95
// */
96
// void get_info(timinghardwareinfo::TimingTLUMonitorData& mon_data) const;
97
98
// /**
99
// * @brief Give info to collector.
100
// */
101
// void get_info(opmonlib::InfoCollector& ci, int level) const override;
102
103
protected
:
104
const
std::vector<std::string>
m_dac_devices
;
105
private
:
106
void
validate_sfp_id
(uint32_t sfp_id)
const
;
// NOLINT(build/unsigned)
107
};
108
109
}
// namespace timing
110
}
// namespace dunedaq
111
112
#endif
// TIMING_INCLUDE_TIMING_TLUIONODE_HPP_
IONode.hpp
dunedaq::timing::IONode::reset
virtual void reset(const std::string &clock_config_file) const =0
Reset timing node.
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::TLUIONode::reset
void reset(const std::string &clock_config_file) const override
Reset IO node.
Definition
TLUIONode.cpp:53
dunedaq::timing::TLUIONode::switch_sfp_tx
void switch_sfp_tx(uint32_t, bool) const override
Control tx laser of on-board SFP softly (I2C command).
Definition
TLUIONode.cpp:181
dunedaq::timing::TLUIONode::reset_pll
void reset_pll() const override
Reset PLL.
Definition
TLUIONode.cpp:125
dunedaq::timing::TLUIONode::m_dac_devices
const std::vector< std::string > m_dac_devices
Definition
TLUIONode.hpp:104
dunedaq::timing::TLUIONode::~TLUIONode
virtual ~TLUIONode()
Definition
TLUIONode.cpp:26
dunedaq::timing::TLUIONode::validate_sfp_id
void validate_sfp_id(uint32_t sfp_id) const
Definition
TLUIONode.cpp:192
dunedaq::timing::TLUIONode::configure_dac
void configure_dac(uint32_t dac_id, uint32_t dac_value, bool internal_ref=false) const
Configure on-board DAC.
Definition
TLUIONode.cpp:132
dunedaq::timing::TLUIONode::get_status
std::string get_status(bool print_out=false) const
Print the status of the timing node.
Definition
TLUIONode.cpp:39
dunedaq::timing::TLUIONode::clocks_ok
bool clocks_ok() const override
Clocks ready?
Definition
TLUIONode.cpp:157
dunedaq::timing::TLUIONode::get_uid_address_parameter_name
std::string get_uid_address_parameter_name() const override
Get the UID address parameter name.
Definition
TLUIONode.cpp:31
dunedaq::timing::TLUIONode::switch_sfp_soft_tx_control_bit
void switch_sfp_soft_tx_control_bit(uint32_t, bool) const override
Control tx laser of on-board SFP softly (I2C command).
Definition
TLUIONode.cpp:173
dunedaq::timing::TLUIONode::TLUIONode
TLUIONode(const uhal::Node &node)
Definition
TLUIONode.cpp:19
dunedaq::timing::TLUIONode::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
TLUIONode.cpp:148
TimingIssues.hpp
dunedaq::timing
< Message parameters
Definition
BoreasDesign.hpp:29
dunedaq
Including Qt Headers.
Definition
module.cpp:16
Generated on
for DUNE-DAQ by
1.17.0