File nebula_agnocast_wrapper.hpp
FileList > agnocast_wrapper > nebula_agnocast_wrapper.hpp
Go to the source code of this file
#include <rclcpp/exceptions/exceptions.hpp>#include <rclcpp/rclcpp.hpp>#include <rcl/timer.h>#include <rclcpp/version.h>#include <chrono>#include <functional>#include <future>#include <memory>#include <stdexcept>#include <string>#include <type_traits>#include <utility>
Namespaces
| Type | Name |
|---|---|
| namespace | nebula |
| namespace | agnocast_wrapper |
Classes
| Type | Name |
|---|---|
| class | Client <typename ServiceT> |
| struct | FutureAndRequestId |
| struct | SharedFutureAndRequestId |
| class | ROS2Client <typename ServiceT> |
| class | ROS2Service <typename ServiceT> |
| class | Service <typename ServiceT> |
Macros
| Type | Name |
|---|---|
| define | ALLOCATE_OUTPUT_MESSAGE_SHARED (publisher) std::make\_shared<typename std::remove\_reference<decltype(\*publisher)>::type::ROSMessageType>() |
| define | ALLOCATE_OUTPUT_MESSAGE_UNIQUE (publisher) std::make\_unique<typename std::remove\_reference<decltype(\*publisher)>::type::ROSMessageType>() |
| define | ALLOCATE_OUTPUT_SERVICE_REQUEST (client) client->allocate\_output\_service\_request() |
| define | NEBULA_CLIENT_FUTURE (ServiceT) typename [**nebula::agnocast\_wrapper::Client**](classnebula_1_1agnocast__wrapper_1_1Client.md)<ServiceT>::Future |
| define | NEBULA_CLIENT_FUTURE_AND_REQUEST_ID (ServiceT) typename [**nebula::agnocast\_wrapper::Client**](classnebula_1_1agnocast__wrapper_1_1Client.md)<ServiceT>::FutureAndRequestId |
| define | NEBULA_CLIENT_PTR (ServiceT) typename [**nebula::agnocast\_wrapper::Client**](classnebula_1_1agnocast__wrapper_1_1Client.md)<ServiceT>::SharedPtr |
| define | NEBULA_CLIENT_REQUEST_PTR (ServiceT) std::shared\_ptr<typename ServiceT::Request> |
| define | NEBULA_CLIENT_RESPONSE_PTR (ServiceT) std::shared\_ptr<const typename ServiceT::Response> |
| define | NEBULA_CLIENT_SHARED_FUTURE (ServiceT) typename [**nebula::agnocast\_wrapper::Client**](classnebula_1_1agnocast__wrapper_1_1Client.md)<ServiceT>::SharedFuture |
| define | NEBULA_CLIENT_SHARED_FUTURE_AND_REQUEST_ID (ServiceT) typename [**nebula::agnocast\_wrapper::Client**](classnebula_1_1agnocast__wrapper_1_1Client.md)<ServiceT>::SharedFutureAndRequestId |
| define | NEBULA_CREATE_CLIENT1 (service_type, service_name) [**nebula::agnocast\_wrapper::create\_client**](namespacenebula_1_1agnocast__wrapper.md#function-create_client)<service\_type>(this, service\_name) |
| define | NEBULA_CREATE_CLIENT1_ON_NODE (service_type, node, service_name) [**nebula::agnocast\_wrapper::create\_client**](namespacenebula_1_1agnocast__wrapper.md#function-create_client)<service\_type>(node, service\_name) |
| define | NEBULA_CREATE_CLIENT2 (service_type, service_name, qos) [**nebula::agnocast\_wrapper::create\_client**](namespacenebula_1_1agnocast__wrapper.md#function-create_client)<service\_type>(this, service\_name, qos) |
| define | NEBULA_CREATE_CLIENT2_ON_NODE (service_type, node, service_name, qos) [**nebula::agnocast\_wrapper::create\_client**](namespacenebula_1_1agnocast__wrapper.md#function-create_client)<service\_type>(node, service\_name, qos) |
| define | NEBULA_CREATE_CLIENT3 (service_type, service_name, qos, group) [**nebula::agnocast\_wrapper::create\_client**](namespacenebula_1_1agnocast__wrapper.md#function-create_client)<service\_type>(this, service\_name, qos, group) |
| define | NEBULA_CREATE_CLIENT3_ON_NODE (service_type, node, service_name, qos, group) [**nebula::agnocast\_wrapper::create\_client**](namespacenebula_1_1agnocast__wrapper.md#function-create_client)<service\_type>(node, service\_name, qos, group) |
| define | NEBULA_CREATE_PUBLISHER2 (message_type, arg1, arg2) this->create\_publisher<message\_type>(arg1, arg2) |
| define | NEBULA_CREATE_PUBLISHER2_ON_NODE (message_type, node, arg1, arg2) (node)->create\_publisher<message\_type>(arg1, arg2) |
| define | NEBULA_CREATE_PUBLISHER3 (message_type, arg1, arg2, arg3) this->create\_publisher<message\_type>(arg1, arg2, arg3) |
| define | NEBULA_CREATE_PUBLISHER3_ON_NODE (message_type, node, arg1, arg2, arg3) (node)->create\_publisher<message\_type>(arg1, arg2, arg3) |
| define | NEBULA_CREATE_SERVICE2 (service_type, service_name, callback) [**nebula::agnocast\_wrapper::create\_service**](namespacenebula_1_1agnocast__wrapper.md#function-create_service)<service\_type>(this, service\_name, callback) |
| define | NEBULA_CREATE_SERVICE2_ON_NODE (service_type, node, service_name, callback) [**nebula::agnocast\_wrapper::create\_service**](namespacenebula_1_1agnocast__wrapper.md#function-create_service)<service\_type>(node, service\_name, callback) |
| define | NEBULA_CREATE_SERVICE3 (service_type, service_name, callback, qos) [**nebula::agnocast\_wrapper::create\_service**](namespacenebula_1_1agnocast__wrapper.md#function-create_service)<service\_type>(this, service\_name, callback, qos) |
| define | NEBULA_CREATE_SERVICE3_ON_NODE (service_type, node, service_name, callback, qos) [**nebula::agnocast\_wrapper::create\_service**](namespacenebula_1_1agnocast__wrapper.md#function-create_service)<service\_type>(node, service\_name, callback, qos) |
| define | NEBULA_CREATE_SERVICE4 (service_type, service_name, callback, qos, group) [**nebula::agnocast\_wrapper::create\_service**](namespacenebula_1_1agnocast__wrapper.md#function-create_service)<service\_type>(this, service\_name, callback, qos, group) |
| define | NEBULA_CREATE_SERVICE4_ON_NODE (service_type, node, service_name, callback, qos, group) [**nebula::agnocast\_wrapper::create\_service**](namespacenebula_1_1agnocast__wrapper.md#function-create_service)<service\_type>(node, service\_name, callback, qos, group) |
| define | NEBULA_CREATE_SUBSCRIPTION (message_type, topic, qos, callback, options) this->create\_subscription<message\_type>(topic, qos, callback, options) |
| define | NEBULA_CREATE_SUBSCRIPTION_ON_NODE (message_type, node, topic, qos, callback, options) (node)->create\_subscription<message\_type>(topic, qos, callback, options) |
| define | NEBULA_MESSAGE_CONST_SHARED_PTR (MessageT) std::shared\_ptr<const MessageT> |
| define | NEBULA_MESSAGE_SHARED_PTR (MessageT) std::shared\_ptr<MessageT> |
| define | NEBULA_MESSAGE_UNIQUE_PTR (MessageT) std::unique\_ptr<MessageT> |
| define | NEBULA_PUBLISHER_OPTIONS rclcpp::PublisherOptions |
| define | NEBULA_PUBLISHER_PTR (MessageT) typename rclcpp::Publisher<MessageT>::SharedPtr |
| define | NEBULA_SERVER_REQUEST_PTR (ServiceT) std::shared\_ptr<const typename ServiceT::Request> |
| define | NEBULA_SERVER_RESPONSE_PTR (ServiceT) std::shared\_ptr<typename ServiceT::Response> |
| define | NEBULA_SERVICE_PTR (ServiceT) typename [**nebula::agnocast\_wrapper::Service**](classnebula_1_1agnocast__wrapper_1_1Service.md)<ServiceT>::SharedPtr |
| define | NEBULA_SUBSCRIPTION_OPTIONS rclcpp::SubscriptionOptions |
| define | NEBULA_SUBSCRIPTION_PTR (MessageT) typename rclcpp::Subscription<MessageT>::SharedPtr |
| define | NEBULA_TIMER_PTR rclcpp::TimerBase::SharedPtr |
Macro Definition Documentation
define ALLOCATE_OUTPUT_MESSAGE_SHARED
#define ALLOCATE_OUTPUT_MESSAGE_SHARED (
publisher
) `std::make_shared<typename std::remove_reference<decltype(*publisher)>::type::ROSMessageType>()`
define ALLOCATE_OUTPUT_MESSAGE_UNIQUE
#define ALLOCATE_OUTPUT_MESSAGE_UNIQUE (
publisher
) `std::make_unique<typename std::remove_reference<decltype(*publisher)>::type::ROSMessageType>()`
define ALLOCATE_OUTPUT_SERVICE_REQUEST
#define ALLOCATE_OUTPUT_SERVICE_REQUEST (
client
) `client->allocate_output_service_request()`
define NEBULA_CLIENT_FUTURE
#define NEBULA_CLIENT_FUTURE (
ServiceT
) `typename nebula::agnocast_wrapper::Client <ServiceT>::Future`
define NEBULA_CLIENT_FUTURE_AND_REQUEST_ID
#define NEBULA_CLIENT_FUTURE_AND_REQUEST_ID (
ServiceT
) `typename nebula::agnocast_wrapper::Client <ServiceT>::FutureAndRequestId`
define NEBULA_CLIENT_PTR
#define NEBULA_CLIENT_PTR (
ServiceT
) `typename nebula::agnocast_wrapper::Client <ServiceT>::SharedPtr`
define NEBULA_CLIENT_REQUEST_PTR
#define NEBULA_CLIENT_REQUEST_PTR (
ServiceT
) `std::shared_ptr<typename ServiceT::Request>`
define NEBULA_CLIENT_RESPONSE_PTR
#define NEBULA_CLIENT_RESPONSE_PTR (
ServiceT
) `std::shared_ptr<const typename ServiceT::Response>`
define NEBULA_CLIENT_SHARED_FUTURE
#define NEBULA_CLIENT_SHARED_FUTURE (
ServiceT
) `typename nebula::agnocast_wrapper::Client <ServiceT>::SharedFuture`
define NEBULA_CLIENT_SHARED_FUTURE_AND_REQUEST_ID
#define NEBULA_CLIENT_SHARED_FUTURE_AND_REQUEST_ID (
ServiceT
) `typename nebula::agnocast_wrapper::Client <ServiceT>::SharedFutureAndRequestId`
define NEBULA_CREATE_CLIENT1
#define NEBULA_CREATE_CLIENT1 (
service_type,
service_name
) `nebula::agnocast_wrapper::create_client <service_type>(this, service_name)`
define NEBULA_CREATE_CLIENT1_ON_NODE
#define NEBULA_CREATE_CLIENT1_ON_NODE (
service_type,
node,
service_name
) `nebula::agnocast_wrapper::create_client <service_type>(node, service_name)`
define NEBULA_CREATE_CLIENT2
#define NEBULA_CREATE_CLIENT2 (
service_type,
service_name,
qos
) `nebula::agnocast_wrapper::create_client <service_type>(this, service_name, qos)`
define NEBULA_CREATE_CLIENT2_ON_NODE
#define NEBULA_CREATE_CLIENT2_ON_NODE (
service_type,
node,
service_name,
qos
) `nebula::agnocast_wrapper::create_client <service_type>(node, service_name, qos)`
define NEBULA_CREATE_CLIENT3
#define NEBULA_CREATE_CLIENT3 (
service_type,
service_name,
qos,
group
) `nebula::agnocast_wrapper::create_client <service_type>(this, service_name, qos, group)`
define NEBULA_CREATE_CLIENT3_ON_NODE
#define NEBULA_CREATE_CLIENT3_ON_NODE (
service_type,
node,
service_name,
qos,
group
) `nebula::agnocast_wrapper::create_client <service_type>(node, service_name, qos, group)`
define NEBULA_CREATE_PUBLISHER2
#define NEBULA_CREATE_PUBLISHER2 (
message_type,
arg1,
arg2
) `this->create_publisher<message_type>(arg1, arg2)`
define NEBULA_CREATE_PUBLISHER2_ON_NODE
#define NEBULA_CREATE_PUBLISHER2_ON_NODE (
message_type,
node,
arg1,
arg2
) `(node)->create_publisher<message_type>(arg1, arg2)`
define NEBULA_CREATE_PUBLISHER3
#define NEBULA_CREATE_PUBLISHER3 (
message_type,
arg1,
arg2,
arg3
) `this->create_publisher<message_type>(arg1, arg2, arg3)`
define NEBULA_CREATE_PUBLISHER3_ON_NODE
#define NEBULA_CREATE_PUBLISHER3_ON_NODE (
message_type,
node,
arg1,
arg2,
arg3
) `(node)->create_publisher<message_type>(arg1, arg2, arg3)`
define NEBULA_CREATE_SERVICE2
#define NEBULA_CREATE_SERVICE2 (
service_type,
service_name,
callback
) `nebula::agnocast_wrapper::create_service <service_type>(this, service_name, callback)`
define NEBULA_CREATE_SERVICE2_ON_NODE
#define NEBULA_CREATE_SERVICE2_ON_NODE (
service_type,
node,
service_name,
callback
) `nebula::agnocast_wrapper::create_service <service_type>(node, service_name, callback)`
define NEBULA_CREATE_SERVICE3
#define NEBULA_CREATE_SERVICE3 (
service_type,
service_name,
callback,
qos
) `nebula::agnocast_wrapper::create_service <service_type>(this, service_name, callback, qos)`
define NEBULA_CREATE_SERVICE3_ON_NODE
#define NEBULA_CREATE_SERVICE3_ON_NODE (
service_type,
node,
service_name,
callback,
qos
) `nebula::agnocast_wrapper::create_service <service_type>(node, service_name, callback, qos)`
define NEBULA_CREATE_SERVICE4
#define NEBULA_CREATE_SERVICE4 (
service_type,
service_name,
callback,
qos,
group
) `nebula::agnocast_wrapper::create_service <service_type>(this, service_name, callback, qos, group)`
define NEBULA_CREATE_SERVICE4_ON_NODE
#define NEBULA_CREATE_SERVICE4_ON_NODE (
service_type,
node,
service_name,
callback,
qos,
group
) `nebula::agnocast_wrapper::create_service <service_type>(node, service_name, callback, qos, group)`
define NEBULA_CREATE_SUBSCRIPTION
#define NEBULA_CREATE_SUBSCRIPTION (
message_type,
topic,
qos,
callback,
options
) `this->create_subscription<message_type>(topic, qos, callback, options)`
define NEBULA_CREATE_SUBSCRIPTION_ON_NODE
#define NEBULA_CREATE_SUBSCRIPTION_ON_NODE (
message_type,
node,
topic,
qos,
callback,
options
) `(node)->create_subscription<message_type>(topic, qos, callback, options)`
define NEBULA_MESSAGE_CONST_SHARED_PTR
#define NEBULA_MESSAGE_CONST_SHARED_PTR (
MessageT
) `std::shared_ptr<const MessageT>`
define NEBULA_MESSAGE_SHARED_PTR
#define NEBULA_MESSAGE_SHARED_PTR (
MessageT
) `std::shared_ptr<MessageT>`
define NEBULA_MESSAGE_UNIQUE_PTR
#define NEBULA_MESSAGE_UNIQUE_PTR (
MessageT
) `std::unique_ptr<MessageT>`
define NEBULA_PUBLISHER_OPTIONS
#define NEBULA_PUBLISHER_OPTIONS `rclcpp::PublisherOptions`
define NEBULA_PUBLISHER_PTR
#define NEBULA_PUBLISHER_PTR (
MessageT
) `typename rclcpp::Publisher<MessageT>::SharedPtr`
define NEBULA_SERVER_REQUEST_PTR
#define NEBULA_SERVER_REQUEST_PTR (
ServiceT
) `std::shared_ptr<const typename ServiceT::Request>`
define NEBULA_SERVER_RESPONSE_PTR
#define NEBULA_SERVER_RESPONSE_PTR (
ServiceT
) `std::shared_ptr<typename ServiceT::Response>`
define NEBULA_SERVICE_PTR
#define NEBULA_SERVICE_PTR (
ServiceT
) `typename nebula::agnocast_wrapper::Service <ServiceT>::SharedPtr`
define NEBULA_SUBSCRIPTION_OPTIONS
#define NEBULA_SUBSCRIPTION_OPTIONS `rclcpp::SubscriptionOptions`
define NEBULA_SUBSCRIPTION_PTR
#define NEBULA_SUBSCRIPTION_PTR (
MessageT
) `typename rclcpp::Subscription<MessageT>::SharedPtr`
define NEBULA_TIMER_PTR
#define NEBULA_TIMER_PTR `rclcpp::TimerBase::SharedPtr`
The documentation for this class was generated from the following file src/nebula_core/nebula_core_ros/include/nebula_core_ros/agnocast_wrapper/nebula_agnocast_wrapper.hpp