15 #ifndef RCLCPP__NODE_INTERFACES__NODE_TOPICS_INTERFACE_HPP_ 16 #define RCLCPP__NODE_INTERFACES__NODE_TOPICS_INTERFACE_HPP_ 34 namespace node_interfaces
49 rclcpp::PublisherBase::SharedPtr
54 bool use_intra_process) = 0;
60 rclcpp::PublisherBase::SharedPtr publisher) = 0;
64 rclcpp::SubscriptionBase::SharedPtr
69 bool use_intra_process) = 0;
75 rclcpp::SubscriptionBase::SharedPtr subscription,
76 rclcpp::callback_group::CallbackGroup::SharedPtr callback_group) = 0;
82 #endif // RCLCPP__NODE_INTERFACES__NODE_TOPICS_INTERFACE_HPP_
virtual void add_publisher(rclcpp::PublisherBase::SharedPtr publisher)=0
#define RCLCPP_SMART_PTR_ALIASES_ONLY(...)
Definition: macros.hpp:66
Definition: allocator_common.hpp:24
Factory with functions used to create a MessageT specific PublisherT.
Definition: publisher_factory.hpp:45
virtual rclcpp::PublisherBase::SharedPtr create_publisher(const std::string &topic_name, const rclcpp::PublisherFactory &publisher_factory, rcl_publisher_options_t &publisher_options, bool use_intra_process)=0
virtual ~NodeTopicsInterface()=default
Factory with functions used to create a Subscription<MessageT>.
Definition: subscription_factory.hpp:47
virtual rclcpp::SubscriptionBase::SharedPtr create_subscription(const std::string &topic_name, const rclcpp::SubscriptionFactory &subscription_factory, rcl_subscription_options_t &subscription_options, bool use_intra_process)=0
virtual void add_subscription(rclcpp::SubscriptionBase::SharedPtr subscription, rclcpp::callback_group::CallbackGroup::SharedPtr callback_group)=0
#define RCLCPP_PUBLIC
Definition: visibility_control.hpp:50
Pure virtual interface class for the NodeTopics part of the Node API.
Definition: node_topics_interface.hpp:38