Class BabelFishService

Inheritance Relationships

Base Types

  • public rclcpp::ServiceBase

  • public std::enable_shared_from_this< BabelFishService >

Class Documentation

class BabelFishService : public rclcpp::ServiceBase, public std::enable_shared_from_this<BabelFishService>

Public Functions

BabelFishService(std::shared_ptr<rcl_node_t> node, const std::string &service_name, ServiceTypeSupport::ConstSharedPtr type_support, AnyServiceCallback callback, rcl_service_options_t options)

Do not call directly, this is private API and might change. Use BabelFish::create_service.

bool take_request(CompoundMessage &request_out, rmw_request_id_t &request_id_out)
void send_response(rmw_request_id_t &request_id, CompoundMessage &response)
std::shared_ptr<void> create_request() override
std::shared_ptr<rmw_request_id_t> create_request_header() override
void handle_request(const std::shared_ptr<rmw_request_id_t> &request_header, const std::shared_ptr<void> &request) override
void configure_introspection(const rclcpp::Clock::SharedPtr &clock, const rclcpp::QoS &qos_service_event_pub, rcl_service_introspection_state_t introspection_state)