SMACC2
Loading...
Searching...
No Matches
cl_gcalcli::CbMonitorConnection Class Reference

Sync behavior that continuously monitors connection health. More...

#include <cb_monitor_connection.hpp>

Inheritance diagram for cl_gcalcli::CbMonitorConnection:
Inheritance graph
Collaboration diagram for cl_gcalcli::CbMonitorConnection:
Collaboration graph

Public Member Functions

 CbMonitorConnection ()=default
 
virtual ~CbMonitorConnection ()=default
 
void onEntry () override
 
void onExit () override
 
- Public Member Functions inherited from smacc2::SmaccClientBehavior
virtual ~SmaccClientBehavior ()
 
void onEntry () override
 
void onExit () override
 
- Public Member Functions inherited from smacc2::ISmaccClientBehavior
 ISmaccClientBehavior ()
 
virtual ~ISmaccClientBehavior ()
 
ISmaccStateMachinegetStateMachine ()
 
std::string getName () const
 
template<typename SmaccClientType >
void requiresClient (SmaccClientType *&storage)
 
template<typename SmaccComponentType >
void requiresComponent (SmaccComponentType *&storage, ComponentRequirement requirementType=ComponentRequirement::SOFT)
 
virtual void executeOnEntry ()
 
virtual void executeOnExit ()
 

Private Member Functions

void onConnectionLost ()
 
void onConnectionRestored ()
 

Private Attributes

ClGcalcliclient_
 
CpGcalcliConnectionconnection_
 

Additional Inherited Members

- Protected Member Functions inherited from smacc2::ISmaccClientBehavior
virtual void runtimeConfigure ()
 
template<typename EventType >
void postEvent (const EventType &ev)
 
template<typename EventType >
void postEvent ()
 
ISmaccStategetCurrentState ()
 
virtual void dispose ()
 
virtual rclcpp::Node::SharedPtr getNode () const
 
virtual rclcpp::Logger getLogger () const
 

Detailed Description

Sync behavior that continuously monitors connection health.

This behavior connects to connection state signals and posts EvConnectionLost events when the connection is lost. Use it alongside other behaviors to handle connection failures.

Definition at line 33 of file cb_monitor_connection.hpp.

Constructor & Destructor Documentation

◆ CbMonitorConnection()

cl_gcalcli::CbMonitorConnection::CbMonitorConnection ( )
default

◆ ~CbMonitorConnection()

virtual cl_gcalcli::CbMonitorConnection::~CbMonitorConnection ( )
virtualdefault

Member Function Documentation

◆ onConnectionLost()

void cl_gcalcli::CbMonitorConnection::onConnectionLost ( )
private

Definition at line 49 of file cb_monitor_connection.cpp.

50{
51 RCLCPP_WARN(getLogger(), "[CbMonitorConnection] Connection lost detected");
52}
virtual rclcpp::Logger getLogger() const

References smacc2::ISmaccClientBehavior::getLogger().

Referenced by onEntry().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ onConnectionRestored()

void cl_gcalcli::CbMonitorConnection::onConnectionRestored ( )
private

Definition at line 54 of file cb_monitor_connection.cpp.

55{
56 RCLCPP_INFO(getLogger(), "[CbMonitorConnection] Connection restored");
57}

References smacc2::ISmaccClientBehavior::getLogger().

Referenced by onEntry().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ onEntry()

void cl_gcalcli::CbMonitorConnection::onEntry ( )
overridevirtual

Reimplemented from smacc2::ISmaccClientBehavior.

Definition at line 20 of file cb_monitor_connection.cpp.

21{
22 RCLCPP_INFO(getLogger(), "[CbMonitorConnection] Starting connection monitoring");
23
25
26 if (!client_)
27 {
28 RCLCPP_ERROR(getLogger(), "[CbMonitorConnection] ClGcalcli client not available");
29 return;
30 }
31
33 if (!connection_)
34 {
35 RCLCPP_ERROR(getLogger(), "[CbMonitorConnection] CpGcalcliConnection not available");
36 return;
37 }
38
39 // Connect to connection state signals
42}
CpGcalcliConnection * getConnection()
smacc2::SmaccSignalConnection onConnectionLost(void(T::*callback)(), T *object)
smacc2::SmaccSignalConnection onConnectionRestored(void(T::*callback)(), T *object)
void requiresClient(SmaccClientType *&storage)

References client_, connection_, cl_gcalcli::ClGcalcli::getConnection(), smacc2::ISmaccClientBehavior::getLogger(), onConnectionLost(), cl_gcalcli::CpGcalcliConnection::onConnectionLost(), onConnectionRestored(), cl_gcalcli::CpGcalcliConnection::onConnectionRestored(), and smacc2::ISmaccClientBehavior::requiresClient().

Here is the call graph for this function:

◆ onExit()

void cl_gcalcli::CbMonitorConnection::onExit ( )
overridevirtual

Reimplemented from smacc2::ISmaccClientBehavior.

Definition at line 44 of file cb_monitor_connection.cpp.

45{
46 RCLCPP_DEBUG(getLogger(), "[CbMonitorConnection] Stopping connection monitoring");
47}

References smacc2::ISmaccClientBehavior::getLogger().

Here is the call graph for this function:

Member Data Documentation

◆ client_

ClGcalcli* cl_gcalcli::CbMonitorConnection::client_
private

Definition at line 46 of file cb_monitor_connection.hpp.

Referenced by onEntry().

◆ connection_

CpGcalcliConnection* cl_gcalcli::CbMonitorConnection::connection_
private

Definition at line 47 of file cb_monitor_connection.hpp.

Referenced by onEntry().


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