Class ILLIXR::network_latency_rx
ClassList > ILLIXR > network_latency_rx
Network latency measurement server plugin (RX side). More...
#include <plugin.hpp>
Inherits the following classes: ILLIXR::threadloop
Public Functions
| Type | Name |
|---|---|
| network_latency_rx (const std::string & name, phonebook * pb) Construct the network latency server plugin. |
|
| ~network_latency_rx () override Destructor - ensures clean shutdown. |
Public Functions inherited from ILLIXR::threadloop
| Type | Name |
|---|---|
| virtual void | internal_stop () Stops the thread. |
| virtual void | start () override Starts the thread. |
| virtual void | stop () override Joins the thread. |
| threadloop (const std::string & name, phonebook * pb) |
|
| ~threadloop () override |
Public Functions inherited from ILLIXR::plugin
See ILLIXR::plugin
| Type | Name |
|---|---|
| std::string | get_name () noexcept const |
| plugin (std::string name, phonebook * pb) |
|
| void | spd_add_file_sink (const std::string & file_name, const std::string & extension, const std::string & log_level) |
| auto | spdlogger (const char * log_level) |
| virtual void | start () A method which Spindle calls when it starts the component. |
| virtual void | stop () A method which Spindle calls when it stops the component. |
| virtual | ~plugin () = default |
Protected Types inherited from ILLIXR::threadloop
| Type | Name |
|---|---|
| enum | skip_option |
Protected Attributes inherited from ILLIXR::threadloop
| Type | Name |
|---|---|
| std::size_t | iteration_no = 0 |
| std::size_t | skip_no = 0 |
Protected Attributes inherited from ILLIXR::plugin
See ILLIXR::plugin
| Type | Name |
|---|---|
| const std::size_t | id_ |
| std::string | name_ |
| const phonebook * | phonebook_ |
| std::shared_ptr< spdlog::logger > | plugin_logger_ |
| const std::shared_ptr< record_logger > | record_logger_ |
Protected Functions
| Type | Name |
|---|---|
| virtual void | _p_one_iteration () override Main iteration - checks for pings and sends pong responses. |
| virtual skip_option | _p_should_skip () override Determines if the iteration should be skipped. |
Protected Functions inherited from ILLIXR::threadloop
| Type | Name |
|---|---|
| virtual void | _p_one_iteration () = 0 Override with the computation the thread does every loop. |
| virtual skip_option | _p_should_skip () Gets called in a tight loop, to gate the invocation of _p_one_iteration() __ |
| virtual void | _p_thread_setup () Gets called at setup time, from the new thread. |
| bool | should_terminate () Whether the thread has been asked to terminate. |
Detailed Description
This plugin listens for ping packets from a client, and immediately responds with pong packets containing timing information. This allows the client to measure round-trip network latency.
No local switchboard publishing is done here - the server side time conversion data arrives via the combined_pose topic instead.
Public Functions Documentation
function network_latency_rx
Construct the network latency server plugin.
ILLIXR::network_latency_rx::network_latency_rx (
const std::string & name,
phonebook * pb
)
Parameters:
name_Plugin namepb_Phonebook pointer for accessing services
function ~network_latency_rx
Destructor - ensures clean shutdown.
ILLIXR::network_latency_rx::~network_latency_rx () override
Protected Functions Documentation
function _p_one_iteration
Main iteration - checks for pings and sends pong responses.
virtual void ILLIXR::network_latency_rx::_p_one_iteration () override
Implements ILLIXR::threadloop::_p_one_iteration
function _p_should_skip
Determines if the iteration should be skipped.
virtual skip_option ILLIXR::network_latency_rx::_p_should_skip () override
Returns:
skip_option indicating whether to run or skip
Implements ILLIXR::threadloop::_p_should_skip
The documentation for this class was generated from the following file /home/friedel/devel/ILLIXR/illixr_release/ILLIXR/plugins/network_latency/rx/plugin.hpp