Capabilities2 0.3.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
capabilities2_events::EventBase Class Referenceabstract

event base class More...

#include "event_base.hpp"

Inheritance diagram for capabilities2_events::EventBase:
Inheritance graph
[legend]

Public Types

typedef std::string capability_str_t
 
typedef capabilities2_events::EventParameters parameter_t
 
typedef std::string access_id_t
 
typedef std::string target_instance_id_t
 
typedef std::function< void(const access_id_t &, const capability_str_t &, const target_instance_id_t &, parameter_t)> event_callback_t
 

Public Member Functions

 EventBase ()
 
 ~EventBase ()=default
 
virtual void emit (const std::string &connection_id, const uint8_t &event_code, const capabilities2_msgs::msg::Capability &source, const capabilities2_msgs::msg::Capability &target, event_callback_t callback)
 emit an event
 
virtual void on_server_ready (const std::string &msg)=0
 on server ready event
 
virtual void on_process_launched (const std::string &pid)=0
 on process launched event
 
virtual void on_process_terminated (const std::string &pid)=0
 on process terminated event
 
virtual void on_triggered (const std::string &trigger_id)=0
 on triggered event from server
 
virtual void on_connected (const std::string &source, const std::string &target)=0
 on connected event from server
 
virtual void on_disconnected (const std::string &source, const std::string &target)=0
 on disconnected event from server
 

Detailed Description

event base class

Represents an event in the capabilities framework. An event can be triggered to notify other components about changes in running capability (runners) states.

Member Typedef Documentation

◆ access_id_t

◆ capability_str_t

◆ event_callback_t

◆ parameter_t

◆ target_instance_id_t

Constructor & Destructor Documentation

◆ EventBase()

capabilities2_events::EventBase::EventBase ( )
inline

◆ ~EventBase()

capabilities2_events::EventBase::~EventBase ( )
default

Member Function Documentation

◆ emit()

virtual void capabilities2_events::EventBase::emit ( const std::string &  connection_id,
const uint8_t &  event_code,
const capabilities2_msgs::msg::Capability &  source,
const capabilities2_msgs::msg::Capability &  target,
event_callback_t  callback 
)
inlinevirtual

emit an event

an event emission uses a parameterised callback which lets loosely-coupled capabilities propogate state changes when a source capability emits an event to a target capability

Parameters
connection_idconnection identifier (format: "bond_id/trigger_id")
event_codetype of event being emitted
sourcesource capability emitting the event
targettarget capability receiving the event
callbackfunction to trigger target capability with (capability, parameters, bond_id, target_instance_id)

Reimplemented in capabilities2_events::PublishedEvent.

◆ on_connected()

virtual void capabilities2_events::EventBase::on_connected ( const std::string &  source,
const std::string &  target 
)
pure virtual

on connected event from server

Parameters
source
target

Implemented in capabilities2_events::PublishedEvent.

◆ on_disconnected()

virtual void capabilities2_events::EventBase::on_disconnected ( const std::string &  source,
const std::string &  target 
)
pure virtual

on disconnected event from server

Parameters
source
target

Implemented in capabilities2_events::PublishedEvent.

◆ on_process_launched()

virtual void capabilities2_events::EventBase::on_process_launched ( const std::string &  pid)
pure virtual

on process launched event

Parameters
pid

Implemented in capabilities2_events::PublishedEvent.

◆ on_process_terminated()

virtual void capabilities2_events::EventBase::on_process_terminated ( const std::string &  pid)
pure virtual

on process terminated event

Parameters
pid

Implemented in capabilities2_events::PublishedEvent.

◆ on_server_ready()

virtual void capabilities2_events::EventBase::on_server_ready ( const std::string &  msg)
pure virtual

on server ready event

Parameters
msg

Implemented in capabilities2_events::PublishedEvent.

◆ on_triggered()

virtual void capabilities2_events::EventBase::on_triggered ( const std::string &  trigger_id)
pure virtual

on triggered event from server

Parameters
trigger_id

Implemented in capabilities2_events::PublishedEvent.


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