Skip to content

File nebula_agnocast_wrapper.hpp

FileList > agnocast_wrapper > nebula_agnocast_wrapper.hpp

Go to the source code of this file

  • #include <rclcpp/rclcpp.hpp>
  • #include <memory>

Macros

Type Name
define ALLOCATE_OUTPUT_MESSAGE_SHARED (publisher) std::make\_shared&lt;typename std::remove\_reference&lt;decltype(\*publisher)&gt;::type::ROSMessageType&gt;()
define ALLOCATE_OUTPUT_MESSAGE_UNIQUE (publisher) std::make\_unique&lt;typename std::remove\_reference&lt;decltype(\*publisher)&gt;::type::ROSMessageType&gt;()
define NEBULA_CREATE_PUBLISHER2 (message_type, node_ptr, arg1, arg2) (node\_ptr)-&gt;create\_publisher&lt;message\_type&gt;(arg1, arg2)
define NEBULA_CREATE_PUBLISHER3 (message_type, node_ptr, arg1, arg2, arg3) (node\_ptr)-&gt;create\_publisher&lt;message\_type&gt;(arg1, arg2, arg3)
define NEBULA_CREATE_SUBSCRIPTION (message_type, node_ptr, topic, qos, callback, options) (node\_ptr)-&gt;create\_subscription&lt;message\_type&gt;(topic, qos, callback, options)
define NEBULA_HAS_ANY_SUBSCRIPTIONS (publisher) (publisher-&gt;get\_subscription\_count() &gt; 0 \|\| publisher-&gt;get\_intra\_process\_subscription\_count() &gt; 0)
define NEBULA_MESSAGE_SHARED_PTR (MessageT) std::shared\_ptr&lt;MessageT&gt;
define NEBULA_MESSAGE_UNIQUE_PTR (MessageT) std::unique\_ptr&lt;MessageT&gt;
define NEBULA_PUBLISHER_OPTIONS rclcpp::PublisherOptions
define NEBULA_PUBLISHER_PTR (MessageT) typename rclcpp::Publisher&lt;MessageT&gt;::SharedPtr
define NEBULA_SUBSCRIPTION_OPTIONS rclcpp::SubscriptionOptions
define NEBULA_SUBSCRIPTION_PTR (MessageT) typename rclcpp::Subscription&lt;MessageT&gt;::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 NEBULA_CREATE_PUBLISHER2

#define NEBULA_CREATE_PUBLISHER2 (
    message_type,
    node_ptr,
    arg1,
    arg2
) `(node_ptr)->create_publisher<message_type>(arg1, arg2)`

define NEBULA_CREATE_PUBLISHER3

#define NEBULA_CREATE_PUBLISHER3 (
    message_type,
    node_ptr,
    arg1,
    arg2,
    arg3
) `(node_ptr)->create_publisher<message_type>(arg1, arg2, arg3)`

define NEBULA_CREATE_SUBSCRIPTION

#define NEBULA_CREATE_SUBSCRIPTION (
    message_type,
    node_ptr,
    topic,
    qos,
    callback,
    options
) `(node_ptr)->create_subscription<message_type>(topic, qos, callback, options)`

define NEBULA_HAS_ANY_SUBSCRIPTIONS

#define NEBULA_HAS_ANY_SUBSCRIPTIONS (
    publisher
) `(publisher->get_subscription_count() > 0 || publisher->get_intra_process_subscription_count() > 0)`

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_SUBSCRIPTION_OPTIONS

#define NEBULA_SUBSCRIPTION_OPTIONS `rclcpp::SubscriptionOptions`

define NEBULA_SUBSCRIPTION_PTR

#define NEBULA_SUBSCRIPTION_PTR (
    MessageT
) `typename rclcpp::Subscription<MessageT>::SharedPtr`


The documentation for this class was generated from the following file nebula_ros/include/nebula_ros/common/agnocast_wrapper/nebula_agnocast_wrapper.hpp