#include <Node.h>
Public Member Functions | |
void | HandleExampleEvent (const ExampleEvent &event) |
Handle an incoming ExampleEvent. More... | |
void | HandleIntervalParameterChange (const UInt &value) |
Handle parameter changes. More... | |
void | HandleSimpleEvent (const SimpleEvent &event) |
Handle an incoming SimpleEvent. More... | |
Node (const std::string &name) | |
Construct a new Node objet. More... | |
~Node () | |
Destroy the Node object. More... | |
Private Member Functions | |
void | Worker () |
Entry point for worker thread. More... | |
Private Attributes | |
ros::Publisher | _complexMessageTelemetryPublisher |
Telemetry publisher for the complex message. More... | |
ros::Subscriber | _exampleEventSink |
Event sink for example events. More... | |
ros::Publisher | _exampleEventSource |
Event source for example events. More... | |
ros::NodeHandle | _handle |
ROS node handle. More... | |
std::atomic< uint64_t > | _heartbeatCounter |
Global heartbeat counter. More... | |
ros::Publisher | _heartbeatCounterTelemetryPublisher |
Telemetry publisher for the heartbeat counter. More... | |
ros::Subscriber | _heartbeatEventSink |
Event sink for heartbeat events. More... | |
ros::Publisher | _heartbeatEventSource |
Event source for simple events. More... | |
ros::Subscriber | _pingEventSink |
Event sink for ping events. More... | |
ros::Publisher | _pongEventSource |
Event source for pong events. More... | |
std::random_device | _random |
Random number generator. More... | |
std::atomic< uint64_t > | _reportInterval |
Report interval. More... | |
ros::Subscriber | _reportIntervalParameterSubscriber |
Parameter subscription for report interval. More... | |
std::atomic< bool > | _shutdownRequested |
Shutdown signal for worker thread. More... | |
std::thread | _worker |
Worker thread. More... | |
Definition at line 14 of file swarmros/include/swarmros/example/Node.h.
Node::Node | ( | const std::string & | name | ) |
Node::~Node | ( | ) |
Destroy the Node object.
Definition at line 124 of file example/Node.cpp.
void Node::HandleExampleEvent | ( | const ExampleEvent & | event | ) |
Handle an incoming ExampleEvent.
event | Event |
Definition at line 106 of file example/Node.cpp.
void Node::HandleIntervalParameterChange | ( | const UInt & | value | ) |
void Node::HandleSimpleEvent | ( | const SimpleEvent & | event | ) |
Handle an incoming SimpleEvent.
event | Event |
Definition at line 77 of file example/Node.cpp.
|
private |
Entry point for worker thread.
Definition at line 35 of file example/Node.cpp.
|
private |
Telemetry publisher for the complex message.
Definition at line 82 of file swarmros/include/swarmros/example/Node.h.
|
private |
Event sink for example events.
Definition at line 46 of file swarmros/include/swarmros/example/Node.h.
|
private |
Event source for example events.
Definition at line 64 of file swarmros/include/swarmros/example/Node.h.
|
private |
ROS node handle.
Definition at line 28 of file swarmros/include/swarmros/example/Node.h.
|
private |
Global heartbeat counter.
Definition at line 100 of file swarmros/include/swarmros/example/Node.h.
|
private |
Telemetry publisher for the heartbeat counter.
Definition at line 76 of file swarmros/include/swarmros/example/Node.h.
|
private |
Event sink for heartbeat events.
Definition at line 40 of file swarmros/include/swarmros/example/Node.h.
|
private |
Event source for simple events.
Definition at line 58 of file swarmros/include/swarmros/example/Node.h.
|
private |
Event sink for ping events.
Definition at line 34 of file swarmros/include/swarmros/example/Node.h.
|
private |
Event source for pong events.
Definition at line 70 of file swarmros/include/swarmros/example/Node.h.
|
private |
Random number generator.
Definition at line 22 of file swarmros/include/swarmros/example/Node.h.
|
private |
Report interval.
Definition at line 106 of file swarmros/include/swarmros/example/Node.h.
|
private |
Parameter subscription for report interval.
Definition at line 52 of file swarmros/include/swarmros/example/Node.h.
|
private |
Shutdown signal for worker thread.
Definition at line 94 of file swarmros/include/swarmros/example/Node.h.
|
private |
Worker thread.
Definition at line 88 of file swarmros/include/swarmros/example/Node.h.