rmw_fastrtps_dynamic_cpp  master
Implement the ROS middleware interface using eProsima FastRTPS dynamic code generation in C++.
All Classes Namespaces Files Functions Variables Typedefs Macros
Classes | Typedefs | Functions
rmw_fastrtps_dynamic_cpp Namespace Reference

Classes

class  BaseTypeSupport
 
struct  GenericCSequence
 
class  MessageTypeSupport
 
class  RequestTypeSupport
 
class  ResponseTypeSupport
 
struct  rosidl_runtime_c__void__Sequence
 
struct  StringHelper
 
struct  StringHelper< rosidl_typesupport_introspection_c__MessageMembers >
 
struct  StringHelper< rosidl_typesupport_introspection_cpp::MessageMembers >
 
class  TypeSupport
 
class  TypeSupportProxy
 

Typedefs

typedef struct rmw_fastrtps_dynamic_cpp::rosidl_runtime_c__void__Sequence rosidl_runtime_c__void__Sequence
 

Functions

eprosima::fastrtps::Publisher * get_request_publisher (rmw_client_t *client)
 Return a native FastRTPS publisher handle for the request. More...
 
eprosima::fastrtps::Subscriber * get_response_subscriber (rmw_client_t *client)
 Return a native FastRTPS subscriber handle for the response. More...
 
eprosima::fastrtps::Participant * get_participant (rmw_node_t *node)
 Return a native FastRTPS participant handle. More...
 
eprosima::fastrtps::Publisher * get_publisher (rmw_publisher_t *publisher)
 Return a native FastRTPS publisher handle. More...
 
eprosima::fastrtps::Subscriber * get_request_subscriber (rmw_service_t *service)
 Return a native FastRTPS subscriber handle for the request. More...
 
eprosima::fastrtps::Publisher * get_response_publisher (rmw_service_t *service)
 Return a native FastRTPS publisher handle for the response. More...
 
eprosima::fastrtps::Subscriber * get_subscriber (rmw_subscription_t *subscription)
 Return a native FastRTPS subscriber handle. More...
 
rmw_ret_t increment_context_impl_ref_count (rmw_context_t *context)
 Increment rmw_context_impl_t reference count, initializing it if necessary. More...
 
rmw_publisher_tcreate_publisher (const CustomParticipantInfo *participant_info, const rosidl_message_type_support_t *type_supports, const char *topic_name, const rmw_qos_profile_t *qos_policies, const rmw_publisher_options_t *publisher_options, bool keyed, bool create_publisher_listener)
 
rmw_subscription_tcreate_subscription (const CustomParticipantInfo *participant_info, const rosidl_message_type_support_t *type_supports, const char *topic_name, const rmw_qos_profile_t *qos_policies, const rmw_subscription_options_t *subscription_options, bool keyed, bool create_subscription_listener)
 
bool rosidl_runtime_c__void__Sequence__init (rosidl_runtime_c__void__Sequence *sequence, size_t size, size_t member_size)
 
void rosidl_runtime_c__void__Sequence__fini (rosidl_runtime_c__void__Sequence *sequence)
 
template<typename T >
void serialize_field (const rosidl_typesupport_introspection_cpp::MessageMember *member, void *field, eprosima::fastcdr::Cdr &ser)
 
template<>
void serialize_field< std::wstring > (const rosidl_typesupport_introspection_cpp::MessageMember *member, void *field, eprosima::fastcdr::Cdr &ser)
 
template<typename T >
void serialize_field (const rosidl_typesupport_introspection_c__MessageMember *member, void *field, eprosima::fastcdr::Cdr &ser)
 
template<>
void serialize_field< std::string > (const rosidl_typesupport_introspection_c__MessageMember *member, void *field, eprosima::fastcdr::Cdr &ser)
 
template<>
void serialize_field< std::wstring > (const rosidl_typesupport_introspection_c__MessageMember *member, void *field, eprosima::fastcdr::Cdr &ser)
 
size_t get_array_size_and_assign_field (const rosidl_typesupport_introspection_cpp::MessageMember *member, void *field, void *&subros_message, size_t sub_members_size, size_t max_align)
 
size_t get_array_size_and_assign_field (const rosidl_typesupport_introspection_c__MessageMember *member, void *field, void *&subros_message, size_t, size_t)
 
template<typename T >
size_t next_field_align (const rosidl_typesupport_introspection_cpp::MessageMember *member, void *field, size_t current_alignment)
 
template<typename T >
size_t next_field_align_string (const rosidl_typesupport_introspection_cpp::MessageMember *member, void *field, size_t current_alignment)
 
template<typename T >
size_t next_field_align (const rosidl_typesupport_introspection_c__MessageMember *member, void *field, size_t current_alignment)
 
template<typename T >
size_t next_field_align_string (const rosidl_typesupport_introspection_c__MessageMember *member, void *field, size_t current_alignment)
 
template<>
size_t next_field_align_string< std::string > (const rosidl_typesupport_introspection_c__MessageMember *member, void *field, size_t current_alignment)
 
template<>
size_t next_field_align_string< std::wstring > (const rosidl_typesupport_introspection_c__MessageMember *member, void *field, size_t current_alignment)
 
template<typename T >
void deserialize_field (const rosidl_typesupport_introspection_cpp::MessageMember *member, void *field, eprosima::fastcdr::Cdr &deser, bool call_new)
 
template<>
void deserialize_field< std::string > (const rosidl_typesupport_introspection_cpp::MessageMember *member, void *field, eprosima::fastcdr::Cdr &deser, bool call_new)
 
template<>
void deserialize_field< std::wstring > (const rosidl_typesupport_introspection_cpp::MessageMember *member, void *field, eprosima::fastcdr::Cdr &deser, bool call_new)
 
template<typename T >
void deserialize_field (const rosidl_typesupport_introspection_c__MessageMember *member, void *field, eprosima::fastcdr::Cdr &deser, bool call_new)
 
template<>
void deserialize_field< std::string > (const rosidl_typesupport_introspection_c__MessageMember *member, void *field, eprosima::fastcdr::Cdr &deser, bool call_new)
 
template<>
void deserialize_field< std::wstring > (const rosidl_typesupport_introspection_c__MessageMember *member, void *field, eprosima::fastcdr::Cdr &deser, bool call_new)
 
size_t get_submessage_array_deserialize (const rosidl_typesupport_introspection_cpp::MessageMember *member, eprosima::fastcdr::Cdr &deser, void *field, void *&subros_message, bool call_new, size_t sub_members_size, size_t max_align)
 
size_t get_submessage_array_deserialize (const rosidl_typesupport_introspection_c__MessageMember *member, eprosima::fastcdr::Cdr &deser, void *field, void *&subros_message, bool, size_t sub_members_size, size_t)
 

Typedef Documentation

◆ rosidl_runtime_c__void__Sequence

Function Documentation

◆ get_request_publisher()

eprosima::fastrtps::Publisher* rmw_fastrtps_dynamic_cpp::get_request_publisher ( rmw_client_t client)

Return a native FastRTPS publisher handle for the request.

The function returns NULL when either the client handle is NULL or when the client handle is from a different rmw implementation.

Returns
native FastRTPS publisher handle if successful, otherwise NULL

◆ get_response_subscriber()

eprosima::fastrtps::Subscriber* rmw_fastrtps_dynamic_cpp::get_response_subscriber ( rmw_client_t client)

Return a native FastRTPS subscriber handle for the response.

The function returns NULL when either the client handle is NULL or when the client handle is from a different rmw implementation.

Returns
native FastRTPS subscriber handle if successful, otherwise NULL

◆ get_participant()

eprosima::fastrtps::Participant* rmw_fastrtps_dynamic_cpp::get_participant ( rmw_node_t node)

Return a native FastRTPS participant handle.

The function returns NULL when either the node handle is NULL or when the node handle is from a different rmw implementation.

Returns
native FastRTPS participant handle if successful, otherwise NULL

◆ get_publisher()

eprosima::fastrtps::Publisher* rmw_fastrtps_dynamic_cpp::get_publisher ( rmw_publisher_t publisher)

Return a native FastRTPS publisher handle.

The function returns NULL when either the publisher handle is NULL or when the publisher handle is from a different rmw implementation.

Returns
native FastRTPS publisher handle if successful, otherwise NULL

◆ get_request_subscriber()

eprosima::fastrtps::Subscriber* rmw_fastrtps_dynamic_cpp::get_request_subscriber ( rmw_service_t service)

Return a native FastRTPS subscriber handle for the request.

The function returns NULL when either the service handle is NULL or when the service handle is from a different rmw implementation.

Returns
native FastRTPS subscriber handle if successful, otherwise NULL

◆ get_response_publisher()

eprosima::fastrtps::Publisher* rmw_fastrtps_dynamic_cpp::get_response_publisher ( rmw_service_t service)

Return a native FastRTPS publisher handle for the response.

The function returns NULL when either the service handle is NULL or when the service handle is from a different rmw implementation.

Returns
native FastRTPS publisher handle if successful, otherwise NULL

◆ get_subscriber()

eprosima::fastrtps::Subscriber* rmw_fastrtps_dynamic_cpp::get_subscriber ( rmw_subscription_t subscription)

Return a native FastRTPS subscriber handle.

The function returns NULL when either the subscription handle is NULL or when the subscription handle is from a different rmw implementation.

Returns
native FastRTPS subscriber handle if successful, otherwise NULL

◆ increment_context_impl_ref_count()

rmw_ret_t rmw_fastrtps_dynamic_cpp::increment_context_impl_ref_count ( rmw_context_t context)

Increment rmw_context_impl_t reference count, initializing it if necessary.

Should be called when creating a node, and before using context->impl.

◆ create_publisher()

rmw_publisher_t* rmw_fastrtps_dynamic_cpp::create_publisher ( const CustomParticipantInfo participant_info,
const rosidl_message_type_support_t *  type_supports,
const char *  topic_name,
const rmw_qos_profile_t qos_policies,
const rmw_publisher_options_t publisher_options,
bool  keyed,
bool  create_publisher_listener 
)

◆ create_subscription()

rmw_subscription_t* rmw_fastrtps_dynamic_cpp::create_subscription ( const CustomParticipantInfo participant_info,
const rosidl_message_type_support_t *  type_supports,
const char *  topic_name,
const rmw_qos_profile_t qos_policies,
const rmw_subscription_options_t subscription_options,
bool  keyed,
bool  create_subscription_listener 
)

◆ rosidl_runtime_c__void__Sequence__init()

bool rmw_fastrtps_dynamic_cpp::rosidl_runtime_c__void__Sequence__init ( rosidl_runtime_c__void__Sequence sequence,
size_t  size,
size_t  member_size 
)
inline

◆ rosidl_runtime_c__void__Sequence__fini()

void rmw_fastrtps_dynamic_cpp::rosidl_runtime_c__void__Sequence__fini ( rosidl_runtime_c__void__Sequence sequence)
inline

◆ serialize_field() [1/2]

template<typename T >
void rmw_fastrtps_dynamic_cpp::serialize_field ( const rosidl_typesupport_introspection_cpp::MessageMember *  member,
void *  field,
eprosima::fastcdr::Cdr &  ser 
)

◆ serialize_field< std::wstring >() [1/2]

template<>
void rmw_fastrtps_dynamic_cpp::serialize_field< std::wstring > ( const rosidl_typesupport_introspection_cpp::MessageMember *  member,
void *  field,
eprosima::fastcdr::Cdr &  ser 
)
inline

◆ serialize_field() [2/2]

template<typename T >
void rmw_fastrtps_dynamic_cpp::serialize_field ( const rosidl_typesupport_introspection_c__MessageMember *  member,
void *  field,
eprosima::fastcdr::Cdr &  ser 
)

◆ serialize_field< std::string >()

template<>
void rmw_fastrtps_dynamic_cpp::serialize_field< std::string > ( const rosidl_typesupport_introspection_c__MessageMember *  member,
void *  field,
eprosima::fastcdr::Cdr &  ser 
)
inline

◆ serialize_field< std::wstring >() [2/2]

template<>
void rmw_fastrtps_dynamic_cpp::serialize_field< std::wstring > ( const rosidl_typesupport_introspection_c__MessageMember *  member,
void *  field,
eprosima::fastcdr::Cdr &  ser 
)
inline

◆ get_array_size_and_assign_field() [1/2]

size_t rmw_fastrtps_dynamic_cpp::get_array_size_and_assign_field ( const rosidl_typesupport_introspection_cpp::MessageMember *  member,
void *  field,
void *&  subros_message,
size_t  sub_members_size,
size_t  max_align 
)
inline

◆ get_array_size_and_assign_field() [2/2]

size_t rmw_fastrtps_dynamic_cpp::get_array_size_and_assign_field ( const rosidl_typesupport_introspection_c__MessageMember *  member,
void *  field,
void *&  subros_message,
size_t  ,
size_t   
)
inline

◆ next_field_align() [1/2]

template<typename T >
size_t rmw_fastrtps_dynamic_cpp::next_field_align ( const rosidl_typesupport_introspection_cpp::MessageMember *  member,
void *  field,
size_t  current_alignment 
)

◆ next_field_align_string() [1/2]

template<typename T >
size_t rmw_fastrtps_dynamic_cpp::next_field_align_string ( const rosidl_typesupport_introspection_cpp::MessageMember *  member,
void *  field,
size_t  current_alignment 
)

◆ next_field_align() [2/2]

template<typename T >
size_t rmw_fastrtps_dynamic_cpp::next_field_align ( const rosidl_typesupport_introspection_c__MessageMember *  member,
void *  field,
size_t  current_alignment 
)

◆ next_field_align_string() [2/2]

template<typename T >
size_t rmw_fastrtps_dynamic_cpp::next_field_align_string ( const rosidl_typesupport_introspection_c__MessageMember *  member,
void *  field,
size_t  current_alignment 
)

◆ next_field_align_string< std::string >()

template<>
size_t rmw_fastrtps_dynamic_cpp::next_field_align_string< std::string > ( const rosidl_typesupport_introspection_c__MessageMember *  member,
void *  field,
size_t  current_alignment 
)
inline

◆ next_field_align_string< std::wstring >()

template<>
size_t rmw_fastrtps_dynamic_cpp::next_field_align_string< std::wstring > ( const rosidl_typesupport_introspection_c__MessageMember *  member,
void *  field,
size_t  current_alignment 
)
inline

◆ deserialize_field() [1/2]

template<typename T >
void rmw_fastrtps_dynamic_cpp::deserialize_field ( const rosidl_typesupport_introspection_cpp::MessageMember *  member,
void *  field,
eprosima::fastcdr::Cdr &  deser,
bool  call_new 
)

◆ deserialize_field< std::string >() [1/2]

template<>
void rmw_fastrtps_dynamic_cpp::deserialize_field< std::string > ( const rosidl_typesupport_introspection_cpp::MessageMember *  member,
void *  field,
eprosima::fastcdr::Cdr &  deser,
bool  call_new 
)
inline

◆ deserialize_field< std::wstring >() [1/2]

template<>
void rmw_fastrtps_dynamic_cpp::deserialize_field< std::wstring > ( const rosidl_typesupport_introspection_cpp::MessageMember *  member,
void *  field,
eprosima::fastcdr::Cdr &  deser,
bool  call_new 
)
inline

◆ deserialize_field() [2/2]

template<typename T >
void rmw_fastrtps_dynamic_cpp::deserialize_field ( const rosidl_typesupport_introspection_c__MessageMember *  member,
void *  field,
eprosima::fastcdr::Cdr &  deser,
bool  call_new 
)

◆ deserialize_field< std::string >() [2/2]

template<>
void rmw_fastrtps_dynamic_cpp::deserialize_field< std::string > ( const rosidl_typesupport_introspection_c__MessageMember *  member,
void *  field,
eprosima::fastcdr::Cdr &  deser,
bool  call_new 
)
inline

◆ deserialize_field< std::wstring >() [2/2]

template<>
void rmw_fastrtps_dynamic_cpp::deserialize_field< std::wstring > ( const rosidl_typesupport_introspection_c__MessageMember *  member,
void *  field,
eprosima::fastcdr::Cdr &  deser,
bool  call_new 
)
inline

◆ get_submessage_array_deserialize() [1/2]

size_t rmw_fastrtps_dynamic_cpp::get_submessage_array_deserialize ( const rosidl_typesupport_introspection_cpp::MessageMember *  member,
eprosima::fastcdr::Cdr &  deser,
void *  field,
void *&  subros_message,
bool  call_new,
size_t  sub_members_size,
size_t  max_align 
)
inline

◆ get_submessage_array_deserialize() [2/2]

size_t rmw_fastrtps_dynamic_cpp::get_submessage_array_deserialize ( const rosidl_typesupport_introspection_c__MessageMember *  member,
eprosima::fastcdr::Cdr &  deser,
void *  field,
void *&  subros_message,
bool  ,
size_t  sub_members_size,
size_t   
)
inline