Class TypeSupportProvider

Inheritance Relationships

Derived Type

Class Documentation

class TypeSupportProvider

Subclassed by ros_babel_fish::LocalTypeSupportProvider

Public Types

using SharedPtr = std::shared_ptr<TypeSupportProvider>
using ConstSharedPtr = std::shared_ptr<const TypeSupportProvider>

Public Functions

TypeSupportProvider()
MessageTypeSupport::ConstSharedPtr getMessageTypeSupport(const std::string &type) const
ServiceTypeSupport::ConstSharedPtr getServiceTypeSupport(const std::string &type) const
ActionTypeSupport::ConstSharedPtr getActionTypeSupport(const std::string &type) const

Protected Functions

virtual MessageTypeSupport::ConstSharedPtr getMessageTypeSupportImpl(const std::string &type) const = 0

Implementations should call registerMessage if the type support can be cached which is usually the case.

virtual ServiceTypeSupport::ConstSharedPtr getServiceTypeSupportImpl(const std::string &type) const = 0
virtual ActionTypeSupport::ConstSharedPtr getActionTypeSupportImpl(const std::string &type) const = 0
MessageTypeSupport::ConstSharedPtr registerMessage(const std::string &name, const std::shared_ptr<void> &type_support_library, rosidl_message_type_support_t type_support, const std::shared_ptr<void> &introspection_type_support_library, rosidl_message_type_support_t introspection_type_support) const
ServiceTypeSupport::ConstSharedPtr registerService(const std::string &name, const std::shared_ptr<void> &type_support_library, rosidl_service_type_support_t type_support, const std::shared_ptr<void> &introspection_type_support_library, rosidl_service_type_support_t introspection_type_support) const
ActionTypeSupport::ConstSharedPtr registerAction(const std::string &name, ActionTypeSupport::ConstSharedPtr type_support) const