Skip to main content

RealtimeTriggerServiceMonitor Class

Declaration

class moveit_pro_controllers::RealtimeTriggerServiceMonitor { ... }

Included Headers

#include <realtime_trigger_service_monitor.hpp>

Enumerations Index

enum classOutcome : std::int64_t { ... }

Public Constructors Index

RealtimeTriggerServiceMonitor (std::shared_ptr< rclcpp_lifecycle::LifecycleNode > node, std::string_view service_name, std::chrono::steady_clock::duration response_timeout=std::chrono::seconds(30))
RealtimeTriggerServiceMonitor (const RealtimeTriggerServiceMonitor &)=delete
RealtimeTriggerServiceMonitor (RealtimeTriggerServiceMonitor &&)=delete

Public Destructor Index

~RealtimeTriggerServiceMonitor ()

Public Operators Index

RealtimeTriggerServiceMonitor &operator= (const RealtimeTriggerServiceMonitor &)=delete
RealtimeTriggerServiceMonitor &operator= (RealtimeTriggerServiceMonitor &&)=delete

Public Member Functions Index

boolhas_triggered ()
voidnotify_completed () noexcept
voidnotify_aborted () noexcept
voidnotify_rejected () noexcept

Private Member Functions Index

voidresolve (Outcome outcome) noexcept
voidpollAndRespond ()
std::optional< Resolution >takeResolvedOutcome ()
voidsendPendingResponse (bool success, std::string_view message)

Private Member Attributes Index

realtime_tools::RealtimeBuffer< int >realtime_buffer_
rclcpp::Service< std_srvs::srv::Trigger >::SharedPtrservice_
rclcpp::TimerBase::SharedPtrresponse_timer_
rclcpp::Loggerlogger_
std::chrono::steady_clock::durationresponse_timeout_
intuuid_ros_ = 0
std::atomic< int >uuid_rt_ { 0 }
std::atomic< std::int64_t >resolved_ { 0 }
rmw_request_id_tpending_request_id_ {}
boolhas_pending_request_ = false
intpending_uuid_ = 0
intlast_responded_uuid_ = 0
std::chrono::steady_clock::time_pointpending_deadline_ {}

Definition at line 43 of file realtime_trigger_service_monitor.hpp.

Enumerations

Outcome

enum class moveit_pro_controllers::RealtimeTriggerServiceMonitor::Outcome : std::int64_t
strong
Enumeration values
Aborted (= 0)
Completed (= 1)
Rejected (= 2)

Definition at line 80 of file realtime_trigger_service_monitor.hpp.

Public Constructors

RealtimeTriggerServiceMonitor()

moveit_pro_controllers::RealtimeTriggerServiceMonitor::RealtimeTriggerServiceMonitor (std::shared_ptr< rclcpp_lifecycle::LifecycleNode > node, std::string_view service_name, std::chrono::steady_clock::duration response_timeout=std::chrono::seconds(30))
explicit

Declaration at line 48 of file realtime_trigger_service_monitor.hpp, definition at line 32 of file realtime_trigger_service_monitor.cpp.

RealtimeTriggerServiceMonitor()

moveit_pro_controllers::RealtimeTriggerServiceMonitor::RealtimeTriggerServiceMonitor (const RealtimeTriggerServiceMonitor &)
delete

Definition at line 56 of file realtime_trigger_service_monitor.hpp.

RealtimeTriggerServiceMonitor()

moveit_pro_controllers::RealtimeTriggerServiceMonitor::RealtimeTriggerServiceMonitor (RealtimeTriggerServiceMonitor &&)
delete

Definition at line 58 of file realtime_trigger_service_monitor.hpp.

Public Destructor

~RealtimeTriggerServiceMonitor()

moveit_pro_controllers::RealtimeTriggerServiceMonitor::~RealtimeTriggerServiceMonitor ()

Declaration at line 54 of file realtime_trigger_service_monitor.hpp, definition at line 72 of file realtime_trigger_service_monitor.cpp.

Public Operators

operator=()

RealtimeTriggerServiceMonitor & moveit_pro_controllers::RealtimeTriggerServiceMonitor::operator= (const RealtimeTriggerServiceMonitor &)
delete

Definition at line 57 of file realtime_trigger_service_monitor.hpp.

operator=()

RealtimeTriggerServiceMonitor & moveit_pro_controllers::RealtimeTriggerServiceMonitor::operator= (RealtimeTriggerServiceMonitor &&)
delete

Definition at line 59 of file realtime_trigger_service_monitor.hpp.

Public Member Functions

has_triggered()

bool moveit_pro_controllers::RealtimeTriggerServiceMonitor::has_triggered ()

Declaration at line 62 of file realtime_trigger_service_monitor.hpp, definition at line 103 of file realtime_trigger_service_monitor.cpp.

notify_aborted()

void moveit_pro_controllers::RealtimeTriggerServiceMonitor::notify_aborted ()
noexcept

Declaration at line 71 of file realtime_trigger_service_monitor.hpp, definition at line 126 of file realtime_trigger_service_monitor.cpp.

notify_completed()

void moveit_pro_controllers::RealtimeTriggerServiceMonitor::notify_completed ()
noexcept

Declaration at line 66 of file realtime_trigger_service_monitor.hpp, definition at line 121 of file realtime_trigger_service_monitor.cpp.

notify_rejected()

void moveit_pro_controllers::RealtimeTriggerServiceMonitor::notify_rejected ()
noexcept

Declaration at line 76 of file realtime_trigger_service_monitor.hpp, definition at line 131 of file realtime_trigger_service_monitor.cpp.

Private Member Functions

pollAndRespond()

void moveit_pro_controllers::RealtimeTriggerServiceMonitor::pollAndRespond ()

Declaration at line 99 of file realtime_trigger_service_monitor.hpp, definition at line 169 of file realtime_trigger_service_monitor.cpp.

resolve()

void moveit_pro_controllers::RealtimeTriggerServiceMonitor::resolve (Outcome outcome)
noexcept

Declaration at line 95 of file realtime_trigger_service_monitor.hpp, definition at line 113 of file realtime_trigger_service_monitor.cpp.

sendPendingResponse()

void moveit_pro_controllers::RealtimeTriggerServiceMonitor::sendPendingResponse (bool success, std::string_view message)

Declaration at line 107 of file realtime_trigger_service_monitor.hpp, definition at line 160 of file realtime_trigger_service_monitor.cpp.

takeResolvedOutcome()

std::optional< RealtimeTriggerServiceMonitor::Resolution > moveit_pro_controllers::RealtimeTriggerServiceMonitor::takeResolvedOutcome ()

Declaration at line 104 of file realtime_trigger_service_monitor.hpp, definition at line 136 of file realtime_trigger_service_monitor.cpp.

Private Member Attributes

has_pending_request_

bool moveit_pro_controllers::RealtimeTriggerServiceMonitor::has_pending_request_ = false

Definition at line 129 of file realtime_trigger_service_monitor.hpp.

last_responded_uuid_

int moveit_pro_controllers::RealtimeTriggerServiceMonitor::last_responded_uuid_ = 0

Definition at line 131 of file realtime_trigger_service_monitor.hpp.

logger_

rclcpp::Logger moveit_pro_controllers::RealtimeTriggerServiceMonitor::logger_

Definition at line 112 of file realtime_trigger_service_monitor.hpp.

pending_deadline_

std::chrono::steady_clock::time_point moveit_pro_controllers::RealtimeTriggerServiceMonitor::pending_deadline_ {}

Definition at line 132 of file realtime_trigger_service_monitor.hpp.

pending_request_id_

rmw_request_id_t moveit_pro_controllers::RealtimeTriggerServiceMonitor::pending_request_id_ {}

Definition at line 128 of file realtime_trigger_service_monitor.hpp.

pending_uuid_

int moveit_pro_controllers::RealtimeTriggerServiceMonitor::pending_uuid_ = 0

Definition at line 130 of file realtime_trigger_service_monitor.hpp.

realtime_buffer_

realtime_tools::RealtimeBuffer<int> moveit_pro_controllers::RealtimeTriggerServiceMonitor::realtime_buffer_

Definition at line 109 of file realtime_trigger_service_monitor.hpp.

resolved_

std::atomic<std::int64_t> moveit_pro_controllers::RealtimeTriggerServiceMonitor::resolved_ { 0 }

Definition at line 123 of file realtime_trigger_service_monitor.hpp.

response_timeout_

std::chrono::steady_clock::duration moveit_pro_controllers::RealtimeTriggerServiceMonitor::response_timeout_

Definition at line 113 of file realtime_trigger_service_monitor.hpp.

response_timer_

rclcpp::TimerBase::SharedPtr moveit_pro_controllers::RealtimeTriggerServiceMonitor::response_timer_

Definition at line 111 of file realtime_trigger_service_monitor.hpp.

service_

rclcpp::Service<std_srvs::srv::Trigger>::SharedPtr moveit_pro_controllers::RealtimeTriggerServiceMonitor::service_

Definition at line 110 of file realtime_trigger_service_monitor.hpp.

uuid_ros_

int moveit_pro_controllers::RealtimeTriggerServiceMonitor::uuid_ros_ = 0

Definition at line 114 of file realtime_trigger_service_monitor.hpp.

uuid_rt_

std::atomic<int> moveit_pro_controllers::RealtimeTriggerServiceMonitor::uuid_rt_ { 0 }

Definition at line 119 of file realtime_trigger_service_monitor.hpp.


The documentation for this class was generated from the following files:


Generated via doxygen2docusaurus 2.2.2 by Doxygen 1.9.8.