diff --git a/rmw_connextddsmicro/CHANGELOG.rst b/rmw_connextddsmicro/CHANGELOG.rst deleted file mode 100644 index 771a684f..00000000 --- a/rmw_connextddsmicro/CHANGELOG.rst +++ /dev/null @@ -1,179 +0,0 @@ -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Changelog for package rmw_connextddsmicro -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -1.2.0 (2025-04-25) ------------------- - -1.1.0 (2025-04-18) ------------------- -* Mark the package rmw_connextddsmicro as deprecated (`#182 `_) -* Switch buildtool to ament_cmake package (`#183 `_) -* Contributors: Francisco Gallego Salido, Scott K Logan - -1.0.1 (2025-03-11) ------------------- -* Added rmw_event_type_is_supported (`#173 `_) -* Contributors: Alejandro Hernández Cordero - -1.0.0 (2025-02-18) ------------------- - -0.25.1 (2025-02-17) -------------------- - -0.25.0 (2024-12-20) -------------------- - -0.24.2 (2024-10-03) -------------------- - -0.24.1 (2024-07-29) -------------------- - -0.24.0 (2024-06-17) -------------------- - -0.23.0 (2024-04-26) -------------------- - -0.22.0 (2024-04-09) -------------------- - -0.21.0 (2024-03-28) -------------------- - -0.20.1 (2024-03-09) -------------------- - -0.20.0 (2024-01-24) -------------------- - -0.19.0 (2023-11-06) -------------------- - -0.18.0 (2023-10-04) -------------------- -* Add rmw count clients services impl (`#93 `_) -* Cleanup context implementation (`#131 `_) -* Contributors: Chris Lalancette, Minju, Lee - -0.17.0 (2023-08-21) -------------------- -* Update to C++17 (`#125 `_) -* Contributors: Chris Lalancette - -0.16.0 (2023-07-11) -------------------- - -0.15.1 (2023-05-11) -------------------- - -0.15.0 (2023-04-27) -------------------- - -0.14.0 (2023-04-12) -------------------- -* Dynamic Subscription (BONUS: Allocators): rmw_connextdds (`#115 `_) -* Add stubs for new rmw interfaces (`#111 `_) -* Contributors: methylDragon - -0.13.0 (2022-11-02) -------------------- -* Add rmw_get_gid_for_client impl (`#92 `_) -* Contributors: Brian - -0.12.1 (2022-09-13) -------------------- - -0.12.0 (2022-05-03) -------------------- -* Switch ROS2 -> ROS 2 everywhere (`#83 `_) -* Contributors: Chris Lalancette - -0.11.1 (2022-04-26) -------------------- - -0.11.0 (2022-04-08) -------------------- -* Exclude missing sample info fields when building rmw_connextddsmicro (`#79 `_) -* Contributors: Andrea Sorbini - -0.10.0 (2022-03-28) -------------------- -* Add support for user-specified content filters (`#68 `_) -* add stub for content filtered topic (`#77 `_) -* Add sequence numbers to message info structure (`#74 `_) -* Contributors: Andrea Sorbini, Chen Lihui, Ivan Santiago Paunovic - -0.9.0 (2022-03-01) ------------------- -* Add rmw listener apis (`#44 `_) -* Contributors: iRobot ROS - -0.8.3 (2022-02-10) ------------------- - -0.8.2 (2022-01-14) ------------------- - -0.8.1 (2021-11-19) ------------------- -* Add client/service QoS getters. (`#67 `_) -* Contributors: mauropasse - -0.8.0 (2021-09-15) ------------------- - -0.7.0 (2021-06-04) ------------------- -* Add rmw_publisher_wait_for_all_acked support. (`#20 `_) -* Contributors: Barry Xu - -0.6.1 (2021-04-26) ------------------- - -0.6.0 (2021-04-11) ------------------- -* Use rmw_qos_profile_unknown when adding entity to graph (`#28 `_) -* Resolve issues identified while investigating `#21 `_ (`#22 `_) -* Use Rolling in README's Quick Start -* Remove commented/unused code -* Avoid topic name validation in get_info functions -* Pass HistoryQosPolicy to graph cache -* Reset error string after looking up type support -* Remove DDS-based WaitSet implementation -* Contributors: Andrea Sorbini, Ivan Santiago Paunovic - -0.5.0 (2021-04-06) ------------------- -* Merge pull request `#13 `_ from Ericsson/unique_network_flows -* Refactor common API -* Update branch `master` to support Rolling only (`#15 `_) -* Contributors: Ananya Muddukrishna, Andrea Sorbini, William Woodall - -0.4.0 (2021-03-25) ------------------- -* Only trigger data condition if samples were loaned from reader. -* Alternative WaitSet implementation based on C++ std, selectable at - compile-time. - -0.3.1 (2021-03-15) ------------------- - -0.3.0 (2021-03-12) ------------------- -* Add `` for `ament_cmake`. - -0.2.1 (2021-03-11) ------------------- - -0.2.0 (2021-03-10) ------------------- - -0.1.1 (2021-03-10) ------------------- - -0.1.0 (2021-03-10) ------------------- -* Initial release. diff --git a/rmw_connextddsmicro/CMakeLists.txt b/rmw_connextddsmicro/CMakeLists.txt deleted file mode 100644 index 0b5ca9ba..00000000 --- a/rmw_connextddsmicro/CMakeLists.txt +++ /dev/null @@ -1,81 +0,0 @@ -# Copyright 2020 Real-Time Innovations, Inc. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -cmake_minimum_required(VERSION 3.5) - -project(rmw_connextddsmicro) - -# Default to C++17 -if(NOT CMAKE_CXX_STANDARD) - set(CMAKE_CXX_STANDARD 17) - set(CMAKE_CXX_STANDARD_REQUIRED ON) -endif() - -find_package(ament_cmake REQUIRED) -find_package(rmw_connextdds_common REQUIRED) - -if(NOT TARGET rmw_connextdds_common::rmw_connextdds_common_micro) - message(STATUS - "Common RMW implementation not found. Skipping ${PROJECT_NAME}.") - ament_package() - return() -endif() - -set(extra_components) -if(RMW_CONNEXT_ENABLE_SECURITY) - list(APPEND extra_components "security_plugins") -endif() - -rti_find_connextmicro(${extra_components}) - -if(NOT RTIConnextDDSMicro_FOUND) - message(STATUS "RTI Connext DDS Micro not found. Skipping ${PROJECT_NAME}.") - ament_package() - return() -endif() - -add_library(${PROJECT_NAME} SHARED - src/rmw_api_impl_rtime.cpp) - -target_include_directories(${PROJECT_NAME} PRIVATE - $) - -target_link_libraries(${PROJECT_NAME} - PUBLIC - rmw_connextdds_common::rmw_connextdds_common_micro) - -configure_rmw_library(${PROJECT_NAME}) - -register_rmw_implementation( - "c:rosidl_typesupport_fastrtps_c:rosidl_typesupport_introspection_c" - "cpp:rosidl_typesupport_fastrtps_cpp:rosidl_typesupport_introspection_cpp") - -install( - TARGETS ${PROJECT_NAME} - ARCHIVE DESTINATION lib - LIBRARY DESTINATION lib - RUNTIME DESTINATION bin -) - -if(BUILD_TESTING) - find_package(ament_lint_auto REQUIRED) - ament_lint_auto_find_test_dependencies() -endif() - -ament_export_libraries(${PROJECT_NAME}) -ament_export_dependencies(rmw_connextdds_common) - -ament_package( - CONFIG_EXTRAS_POST "${PROJECT_NAME}-extras.cmake.in" -) diff --git a/rmw_connextddsmicro/package.xml b/rmw_connextddsmicro/package.xml deleted file mode 100644 index 97dbfc0a..00000000 --- a/rmw_connextddsmicro/package.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - rmw_connextddsmicro - 1.2.0 - A ROS 2 RMW implementation built with RTI Connext DDS Micro. - Andrea Sorbini - Apache License 2.0 - - ament_cmake - ament_cmake - - rmw_connextdds_common - - ament_lint_auto - ament_lint_common - - rmw_implementation_packages - - - ament_cmake - - - This package will be removed in a future ROS 2 distro. Use rmw_connextdds instead. - - - diff --git a/rmw_connextddsmicro/rmw_connextddsmicro-extras.cmake.in b/rmw_connextddsmicro/rmw_connextddsmicro-extras.cmake.in deleted file mode 100644 index 5ed8cb8b..00000000 --- a/rmw_connextddsmicro/rmw_connextddsmicro-extras.cmake.in +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# -# (c) 2020 Copyright, Real-Time Innovations, Inc. (RTI) -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -################################################################################ - -# Generated from @PROJECT_NAME@/cmake/@PROJECT_NAME@-extras.cmake.in - -# Load RTI Connext DDS Micro - -rti_find_connextmicro(${CONNEXTDDS_COMPONENTS}) - -if(NOT RTIConnextDDSMicro_FOUND) - message(ERROR "Failed to load RTI Connext DDS Micro") -endif() diff --git a/rmw_connextddsmicro/src/rmw_api_impl_rtime.cpp b/rmw_connextddsmicro/src/rmw_api_impl_rtime.cpp deleted file mode 100644 index 5197ef76..00000000 --- a/rmw_connextddsmicro/src/rmw_api_impl_rtime.cpp +++ /dev/null @@ -1,1074 +0,0 @@ -// Copyright 2020 Real-Time Innovations, Inc. (RTI) -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#include "rmw_connextdds/rmw_api_impl.hpp" - -#include "rmw/event.h" -#include "rmw/get_node_info_and_types.h" -#include "rmw/get_service_names_and_types.h" -#include "rmw/get_topic_endpoint_info.h" -#include "rmw/get_topic_names_and_types.h" -#include "rmw/init.h" -#include "rmw/init_options.h" -#include "rmw/names_and_types.h" -#include "rmw/rmw.h" - -/***************************************************************************** - * Context API - *****************************************************************************/ -const char * -rmw_get_implementation_identifier() -{ - return rmw_api_connextdds_get_implementation_identifier(); -} - - -const char * -rmw_get_serialization_format() -{ - return rmw_api_connextdds_get_serialization_format(); -} - - -rmw_ret_t -rmw_set_log_severity(rmw_log_severity_t severity) -{ - return rmw_api_connextdds_set_log_severity(severity); -} - - -rmw_ret_t -rmw_init_options_init( - rmw_init_options_t * init_options, - rcutils_allocator_t allocator) -{ - return rmw_api_connextdds_init_options_init(init_options, allocator); -} - - -rmw_ret_t -rmw_init_options_copy( - const rmw_init_options_t * src, - rmw_init_options_t * dst) -{ - return rmw_api_connextdds_init_options_copy(src, dst); -} - - -rmw_ret_t -rmw_init_options_fini(rmw_init_options_t * init_options) -{ - return rmw_api_connextdds_init_options_fini(init_options); -} - - -rmw_ret_t -rmw_init( - const rmw_init_options_t * options, - rmw_context_t * context) -{ - return rmw_api_connextdds_init(options, context); -} - - -rmw_ret_t -rmw_shutdown(rmw_context_t * context) -{ - return rmw_api_connextdds_shutdown(context); -} - - -rmw_ret_t -rmw_context_fini(rmw_context_t * context) -{ - return rmw_api_connextdds_context_fini(context); -} - -/***************************************************************************** - * Event API - *****************************************************************************/ - -rmw_ret_t -rmw_publisher_event_init( - rmw_event_t * rmw_event, - const rmw_publisher_t * publisher, - rmw_event_type_t event_type) -{ - return rmw_api_connextdds_publisher_event_init( - rmw_event, publisher, event_type); -} - - -rmw_ret_t -rmw_subscription_event_init( - rmw_event_t * rmw_event, - const rmw_subscription_t * subscription, - rmw_event_type_t event_type) -{ - return rmw_api_connextdds_subscription_event_init( - rmw_event, subscription, event_type); -} - - -rmw_ret_t -rmw_take_event( - const rmw_event_t * event_handle, - void * event_info, - bool * taken) -{ - return rmw_api_connextdds_take_event(event_handle, event_info, taken); -} - -rmw_ret_t -rmw_event_set_callback( - rmw_event_t * event, - rmw_event_callback_t callback, - const void * user_data) -{ - return rmw_api_connextdds_event_set_callback(event, callback, user_data); -} - -bool -rmw_event_type_is_supported(rmw_event_type_t rmw_event_type) -{ - return rmw_api_connextdds_event_type_is_supported(rmw_event_type); -} - -/***************************************************************************** - * Info API - *****************************************************************************/ - -rmw_ret_t -rmw_get_node_names( - const rmw_node_t * node, - rcutils_string_array_t * node_names, - rcutils_string_array_t * node_namespaces) -{ - return rmw_api_connextdds_get_node_names(node, node_names, node_namespaces); -} - - -rmw_ret_t -rmw_get_node_names_with_enclaves( - const rmw_node_t * node, - rcutils_string_array_t * node_names, - rcutils_string_array_t * node_namespaces, - rcutils_string_array_t * enclaves) -{ - return rmw_api_connextdds_get_node_names_with_enclaves( - node, node_names, node_namespaces, enclaves); -} - - -rmw_ret_t -rmw_get_topic_names_and_types( - const rmw_node_t * node, - rcutils_allocator_t * allocator, - bool no_demangle, - rmw_names_and_types_t * tptyp) -{ - return rmw_api_connextdds_get_topic_names_and_types( - node, allocator, no_demangle, tptyp); -} - - -rmw_ret_t -rmw_get_service_names_and_types( - const rmw_node_t * node, - rcutils_allocator_t * allocator, - rmw_names_and_types_t * sntyp) -{ - return rmw_api_connextdds_get_service_names_and_types( - node, allocator, sntyp); -} - - -rmw_ret_t -rmw_service_server_is_available( - const rmw_node_t * node, - const rmw_client_t * client, - bool * is_available) -{ - return rmw_api_connextdds_service_server_is_available( - node, client, is_available); -} - - -rmw_ret_t -rmw_count_publishers( - const rmw_node_t * node, - const char * topic_name, - size_t * count) -{ - return rmw_api_connextdds_count_publishers(node, topic_name, count); -} - - -rmw_ret_t -rmw_count_subscribers( - const rmw_node_t * node, - const char * topic_name, - size_t * count) -{ - return rmw_api_connextdds_count_subscribers(node, topic_name, count); -} - - -rmw_ret_t -rmw_count_clients( - const rmw_node_t * node, - const char * service_name, - size_t * count) -{ - return rmw_api_connextdds_count_clients(node, service_name, count); -} - - -rmw_ret_t -rmw_count_services( - const rmw_node_t * node, - const char * service_name, - size_t * count) -{ - return rmw_api_connextdds_count_services(node, service_name, count); -} - - -rmw_ret_t -rmw_get_subscriber_names_and_types_by_node( - const rmw_node_t * node, - rcutils_allocator_t * allocator, - const char * node_name, - const char * node_namespace, - bool no_demangle, - rmw_names_and_types_t * tptyp) -{ - return rmw_api_connextdds_get_subscriber_names_and_types_by_node( - node, allocator, node_name, node_namespace, no_demangle, tptyp); -} - - -rmw_ret_t -rmw_get_publisher_names_and_types_by_node( - const rmw_node_t * node, - rcutils_allocator_t * allocator, - const char * node_name, - const char * node_namespace, - bool no_demangle, - rmw_names_and_types_t * tptyp) -{ - return rmw_api_connextdds_get_publisher_names_and_types_by_node( - node, allocator, node_name, node_namespace, no_demangle, tptyp); -} - - -rmw_ret_t -rmw_get_service_names_and_types_by_node( - const rmw_node_t * node, - rcutils_allocator_t * allocator, - const char * node_name, - const char * node_namespace, - rmw_names_and_types_t * sntyp) -{ - return rmw_api_connextdds_get_service_names_and_types_by_node( - node, allocator, node_name, node_namespace, sntyp); -} - - -rmw_ret_t -rmw_get_client_names_and_types_by_node( - const rmw_node_t * node, - rcutils_allocator_t * allocator, - const char * node_name, - const char * node_namespace, - rmw_names_and_types_t * sntyp) -{ - return rmw_api_connextdds_get_client_names_and_types_by_node( - node, allocator, node_name, node_namespace, sntyp); -} - - -rmw_ret_t -rmw_get_publishers_info_by_topic( - const rmw_node_t * node, - rcutils_allocator_t * allocator, - const char * topic_name, - bool no_mangle, - rmw_topic_endpoint_info_array_t * publishers_info) -{ - return rmw_api_connextdds_get_publishers_info_by_topic( - node, allocator, topic_name, no_mangle, publishers_info); -} - - -rmw_ret_t -rmw_get_subscriptions_info_by_topic( - const rmw_node_t * node, - rcutils_allocator_t * allocator, - const char * topic_name, - bool no_mangle, - rmw_topic_endpoint_info_array_t * subscriptions_info) -{ - return rmw_api_connextdds_get_subscriptions_info_by_topic( - node, allocator, topic_name, no_mangle, subscriptions_info); -} - -/***************************************************************************** - * Node API - *****************************************************************************/ - -rmw_node_t * -rmw_create_node( - rmw_context_t * context, - const char * name, - const char * ns) -{ - return rmw_api_connextdds_create_node(context, name, ns); -} - - -rmw_ret_t -rmw_destroy_node(rmw_node_t * rmw_node) -{ - return rmw_api_connextdds_destroy_node(rmw_node); -} - - -const rmw_guard_condition_t * -rmw_node_get_graph_guard_condition(const rmw_node_t * rmw_node) -{ - return rmw_api_connextdds_node_get_graph_guard_condition(rmw_node); -} - -/***************************************************************************** - * Publication API - *****************************************************************************/ - -rmw_ret_t -rmw_publish( - const rmw_publisher_t * publisher, - const void * ros_message, - rmw_publisher_allocation_t * allocation) -{ - return rmw_api_connextdds_publish(publisher, ros_message, allocation); -} - - -rmw_ret_t -rmw_publish_serialized_message( - const rmw_publisher_t * publisher, - const rmw_serialized_message_t * serialized_message, - rmw_publisher_allocation_t * allocation) -{ - return rmw_api_connextdds_publish_serialized_message( - publisher, serialized_message, allocation); -} - - -rmw_ret_t -rmw_publish_loaned_message( - const rmw_publisher_t * publisher, - void * ros_message, - rmw_publisher_allocation_t * allocation) -{ - return rmw_api_connextdds_publish_loaned_message( - publisher, ros_message, allocation); -} - - -rmw_ret_t -rmw_init_publisher_allocation( - const rosidl_message_type_support_t * type_support, - const rosidl_runtime_c__Sequence__bound * message_bounds, - rmw_publisher_allocation_t * allocation) -{ - return rmw_api_connextdds_init_publisher_allocation( - type_support, message_bounds, allocation); -} - - -rmw_ret_t -rmw_fini_publisher_allocation( - rmw_publisher_allocation_t * allocation) -{ - return rmw_api_connextdds_fini_publisher_allocation(allocation); -} - - -rmw_publisher_t * -rmw_create_publisher( - const rmw_node_t * node, - 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) -{ - return rmw_api_connextdds_create_publisher( - node, type_supports, topic_name, qos_policies, publisher_options); -} - - -rmw_ret_t -rmw_get_gid_for_publisher( - const rmw_publisher_t * publisher, - rmw_gid_t * gid) -{ - return rmw_api_connextdds_get_gid_for_publisher( - publisher, gid); -} - - -rmw_ret_t -rmw_get_gid_for_client(const rmw_client_t * client, rmw_gid_t * gid) -{ - return rmw_api_connextdds_get_gid_for_client(client, gid); -} - - -rmw_ret_t -rmw_compare_gids_equal( - const rmw_gid_t * gid1, - const rmw_gid_t * gid2, - bool * result) -{ - return rmw_api_connextdds_compare_gids_equal( - gid1, gid2, result); -} - - -rmw_ret_t -rmw_publisher_count_matched_subscriptions( - const rmw_publisher_t * publisher, - size_t * subscription_count) -{ - return rmw_api_connextdds_publisher_count_matched_subscriptions( - publisher, subscription_count); -} - - -rmw_ret_t -rmw_publisher_assert_liveliness( - const rmw_publisher_t * publisher) -{ - return rmw_api_connextdds_publisher_assert_liveliness(publisher); -} - - -rmw_ret_t -rmw_publisher_wait_for_all_acked( - const rmw_publisher_t * publisher, - rmw_time_t wait_timeout -) -{ - return rmw_api_connextdds_publisher_wait_for_all_acked( - publisher, wait_timeout); -} - - -rmw_ret_t -rmw_publisher_get_actual_qos( - const rmw_publisher_t * publisher, - rmw_qos_profile_t * qos) -{ - return rmw_api_connextdds_publisher_get_actual_qos( - publisher, qos); -} - - -rmw_ret_t -rmw_borrow_loaned_message( - const rmw_publisher_t * publisher, - const rosidl_message_type_support_t * type_support, - void ** ros_message) -{ - return rmw_api_connextdds_borrow_loaned_message( - publisher, type_support, ros_message); -} - - -rmw_ret_t -rmw_return_loaned_message_from_publisher( - const rmw_publisher_t * publisher, - void * loaned_message) -{ - return rmw_api_connextdds_return_loaned_message_from_publisher( - publisher, loaned_message); -} - - -rmw_ret_t -rmw_destroy_publisher( - rmw_node_t * node, - rmw_publisher_t * publisher) -{ - return rmw_api_connextdds_destroy_publisher( - node, publisher); -} - -/***************************************************************************** - * Serialization API - *****************************************************************************/ - -rmw_ret_t -rmw_get_serialized_message_size( - const rosidl_message_type_support_t * type_supports, - const rosidl_runtime_c__Sequence__bound * message_bounds, - size_t * size) -{ - return rmw_api_connextdds_get_serialized_message_size( - type_supports, message_bounds, size); -} - - -rmw_ret_t -rmw_serialize( - const void * ros_message, - const rosidl_message_type_support_t * type_supports, - rmw_serialized_message_t * serialized_message) -{ - return rmw_api_connextdds_serialize( - ros_message, type_supports, serialized_message); -} - - -rmw_ret_t -rmw_deserialize( - const rmw_serialized_message_t * serialized_message, - const rosidl_message_type_support_t * type_supports, - void * ros_message) -{ - return rmw_api_connextdds_deserialize( - serialized_message, type_supports, ros_message); -} - -/***************************************************************************** - * Service API - *****************************************************************************/ - -rmw_ret_t -rmw_take_response( - const rmw_client_t * client, - rmw_service_info_t * request_header, - void * ros_response, - bool * taken) -{ - return rmw_api_connextdds_take_response( - client, - request_header, - ros_response, - taken); -} - - -rmw_ret_t -rmw_take_request( - const rmw_service_t * service, - rmw_service_info_t * request_header, - void * ros_request, - bool * taken) -{ - return rmw_api_connextdds_take_request( - service, - request_header, - ros_request, - taken); -} - - -rmw_ret_t -rmw_send_response( - const rmw_service_t * service, - rmw_request_id_t * request_id, - void * ros_response) -{ - return rmw_api_connextdds_send_response(service, request_id, ros_response); -} - - -rmw_ret_t -rmw_send_request( - const rmw_client_t * client, - const void * ros_request, - int64_t * sequence_id) -{ - return rmw_api_connextdds_send_request(client, ros_request, sequence_id); -} - - -rmw_client_t * -rmw_create_client( - const rmw_node_t * node, - const rosidl_service_type_support_t * type_supports, - const char * service_name, - const rmw_qos_profile_t * qos_policies) -{ - return rmw_api_connextdds_create_client( - node, type_supports, service_name, qos_policies); -} - - -rmw_ret_t -rmw_client_request_publisher_get_actual_qos( - const rmw_client_t * client, - rmw_qos_profile_t * qos) -{ - return rmw_api_connextdds_client_request_publisher_get_actual_qos( - client, qos); -} - - -rmw_ret_t -rmw_client_response_subscription_get_actual_qos( - const rmw_client_t * client, - rmw_qos_profile_t * qos) -{ - return rmw_api_connextdds_client_response_subscription_get_actual_qos( - client, qos); -} - -rmw_ret_t -rmw_destroy_client( - rmw_node_t * node, - rmw_client_t * client) -{ - return rmw_api_connextdds_destroy_client(node, client); -} - - -rmw_service_t * -rmw_create_service( - const rmw_node_t * node, - const rosidl_service_type_support_t * type_supports, - const char * service_name, - const rmw_qos_profile_t * qos_policies) -{ - return rmw_api_connextdds_create_service( - node, type_supports, service_name, qos_policies); -} - - -rmw_ret_t -rmw_service_response_publisher_get_actual_qos( - const rmw_service_t * service, - rmw_qos_profile_t * qos) -{ - return rmw_api_connextdds_service_response_publisher_get_actual_qos( - service, qos); -} - - -rmw_ret_t -rmw_service_request_subscription_get_actual_qos( - const rmw_service_t * service, - rmw_qos_profile_t * qos) -{ - return rmw_api_connextdds_service_request_subscription_get_actual_qos( - service, qos); -} - - -rmw_ret_t -rmw_destroy_service( - rmw_node_t * node, - rmw_service_t * service) -{ - return rmw_api_connextdds_destroy_service(node, service); -} - -rmw_ret_t -rmw_service_set_on_new_request_callback( - rmw_service_t * rmw_service, - rmw_event_callback_t callback, - const void * user_data) -{ - return rmw_api_connextdds_service_set_on_new_request_callback( - rmw_service, callback, user_data); -} - -rmw_ret_t -rmw_client_set_on_new_response_callback( - rmw_client_t * rmw_client, - rmw_event_callback_t callback, - const void * user_data) -{ - return rmw_api_connextdds_client_set_on_new_response_callback( - rmw_client, callback, user_data); -} - -/***************************************************************************** - * Subscription API - *****************************************************************************/ - -rmw_ret_t -rmw_init_subscription_allocation( - const rosidl_message_type_support_t * type_support, - const rosidl_runtime_c__Sequence__bound * message_bounds, - rmw_subscription_allocation_t * allocation) -{ - return rmw_api_connextdds_init_subscription_allocation( - type_support, message_bounds, allocation); -} - - -rmw_ret_t -rmw_fini_subscription_allocation( - rmw_subscription_allocation_t * allocation) -{ - return rmw_api_connextdds_fini_subscription_allocation(allocation); -} - - -rmw_subscription_t * -rmw_create_subscription( - const rmw_node_t * node, - 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) -{ - return rmw_api_connextdds_create_subscription( - node, type_supports, topic_name, qos_policies, subscription_options); -} - - -rmw_ret_t -rmw_subscription_count_matched_publishers( - const rmw_subscription_t * subscription, size_t * publisher_count) -{ - return rmw_api_connextdds_subscription_count_matched_publishers( - subscription, publisher_count); -} - - -rmw_ret_t -rmw_subscription_get_actual_qos( - const rmw_subscription_t * subscription, - rmw_qos_profile_t * qos) -{ - return rmw_api_connextdds_subscription_get_actual_qos(subscription, qos); -} - -rmw_ret_t -rmw_subscription_set_content_filter( - rmw_subscription_t * subscription, - const rmw_subscription_content_filter_options_t * options) -{ - // Content filters are not supported by Micro and this call will - // eventually fail with RMW_RET_UNSUPPORTED. - return rmw_api_connextdds_subscription_set_content_filter( - subscription, options); -} - - -rmw_ret_t -rmw_subscription_get_content_filter( - const rmw_subscription_t * subscription, - rcutils_allocator_t * allocator, - rmw_subscription_content_filter_options_t * options) -{ - // Content filters are not supported by Micro and this call will - // eventually fail with RMW_RET_UNSUPPORTED. - return rmw_api_connextdds_subscription_get_content_filter( - subscription, allocator, options); -} - - -rmw_ret_t -rmw_destroy_subscription( - rmw_node_t * node, - rmw_subscription_t * subscription) -{ - return rmw_api_connextdds_destroy_subscription(node, subscription); -} - - -rmw_ret_t -rmw_take( - const rmw_subscription_t * subscription, - void * ros_message, - bool * taken, - rmw_subscription_allocation_t * allocation) -{ - return rmw_api_connextdds_take( - subscription, ros_message, taken, allocation); -} - - -rmw_ret_t -rmw_take_with_info( - const rmw_subscription_t * subscription, - void * ros_message, - bool * taken, - rmw_message_info_t * message_info, - rmw_subscription_allocation_t * allocation) -{ - return rmw_api_connextdds_take_with_info( - subscription, ros_message, taken, message_info, allocation); -} - -rmw_ret_t -rmw_take_sequence( - const rmw_subscription_t * subscription, - size_t count, - rmw_message_sequence_t * message_sequence, - rmw_message_info_sequence_t * message_info_sequence, - size_t * taken, - rmw_subscription_allocation_t * allocation) -{ - return rmw_api_connextdds_take_sequence( - subscription, count, message_sequence, message_info_sequence, - taken, allocation); -} - -rmw_ret_t -rmw_take_serialized_message( - const rmw_subscription_t * subscription, - rmw_serialized_message_t * serialized_message, - bool * taken, - rmw_subscription_allocation_t * allocation) -{ - return rmw_api_connextdds_take_serialized_message( - subscription, serialized_message, taken, allocation); -} - - -rmw_ret_t -rmw_take_serialized_message_with_info( - const rmw_subscription_t * subscription, - rmw_serialized_message_t * serialized_message, - bool * taken, - rmw_message_info_t * message_info, - rmw_subscription_allocation_t * allocation) -{ - return rmw_api_connextdds_take_serialized_message_with_info( - subscription, serialized_message, taken, message_info, allocation); -} - - -rmw_ret_t -rmw_take_loaned_message( - const rmw_subscription_t * subscription, - void ** loaned_message, - bool * taken, - rmw_subscription_allocation_t * allocation) -{ - return rmw_api_connextdds_take_loaned_message( - subscription, loaned_message, taken, allocation); -} - - -rmw_ret_t -rmw_take_loaned_message_with_info( - const rmw_subscription_t * subscription, - void ** loaned_message, - bool * taken, - rmw_message_info_t * message_info, - rmw_subscription_allocation_t * allocation) -{ - return rmw_api_connextdds_take_loaned_message_with_info( - subscription, loaned_message, taken, message_info, allocation); -} - - -rmw_ret_t -rmw_return_loaned_message_from_subscription( - const rmw_subscription_t * subscription, - void * loaned_message) -{ - return rmw_api_connextdds_return_loaned_message_from_subscription( - subscription, loaned_message); -} - -rmw_ret_t -rmw_subscription_set_on_new_message_callback( - rmw_subscription_t * rmw_subscription, - rmw_event_callback_t callback, - const void * user_data) -{ - return rmw_api_connextdds_subscription_set_on_new_message_callback( - rmw_subscription, callback, user_data); -} - -/***************************************************************************** - * WaitSet API - *****************************************************************************/ - -rmw_guard_condition_t * -rmw_create_guard_condition( - rmw_context_t * context) -{ - return rmw_api_connextdds_create_guard_condition(context); -} - - -rmw_ret_t -rmw_destroy_guard_condition( - rmw_guard_condition_t * guard_condition_handle) -{ - return rmw_api_connextdds_destroy_guard_condition(guard_condition_handle); -} - - -rmw_ret_t -rmw_trigger_guard_condition( - const rmw_guard_condition_t * guard_condition_handle) -{ - return rmw_api_connextdds_trigger_guard_condition(guard_condition_handle); -} - - -rmw_wait_set_t * -rmw_create_wait_set( - rmw_context_t * context, - size_t max_conditions) -{ - return rmw_api_connextdds_create_wait_set(context, max_conditions); -} - - -rmw_ret_t -rmw_destroy_wait_set(rmw_wait_set_t * rmw_ws) -{ - return rmw_api_connextdds_destroy_wait_set(rmw_ws); -} - - -rmw_ret_t -rmw_wait( - rmw_subscriptions_t * subs, - rmw_guard_conditions_t * gcs, - rmw_services_t * srvs, - rmw_clients_t * cls, - rmw_events_t * evs, - rmw_wait_set_t * wait_set, - const rmw_time_t * wait_timeout) -{ - return rmw_api_connextdds_wait( - subs, gcs, srvs, cls, evs, wait_set, wait_timeout); -} - -/****************************************************************************** - * QoS Profile functions - ******************************************************************************/ -rmw_ret_t -rmw_qos_profile_check_compatible( - const rmw_qos_profile_t publisher_profile, - const rmw_qos_profile_t subscription_profile, - rmw_qos_compatibility_type_t * compatibility, - char * reason, - size_t reason_size) -{ - return rmw_api_connextdds_qos_profile_check_compatible( - publisher_profile, - subscription_profile, - compatibility, - reason, - reason_size); -} - -/***************************************************************************** - * Network Flow Endpoints API - *****************************************************************************/ -rmw_ret_t -rmw_publisher_get_network_flow_endpoints( - const rmw_publisher_t * publisher, - rcutils_allocator_t * allocator, - rmw_network_flow_endpoint_array_t * network_flow_endpoint_array) -{ - return rmw_api_connextdds_publisher_get_network_flow_endpoints( - publisher, - allocator, - network_flow_endpoint_array); -} - -rmw_ret_t -rmw_subscription_get_network_flow_endpoints( - const rmw_subscription_t * subscription, - rcutils_allocator_t * allocator, - rmw_network_flow_endpoint_array_t * network_flow_endpoint_array) -{ - return rmw_api_connextdds_subscription_get_network_flow_endpoints( - subscription, - allocator, - network_flow_endpoint_array); -} - -/****************************************************************************** - * Feature support functions - ******************************************************************************/ -bool -rmw_feature_supported(rmw_feature_t feature) -{ - switch (feature) { - case RMW_FEATURE_MESSAGE_INFO_PUBLICATION_SEQUENCE_NUMBER: - { - return true; - } - default: - { - return false; - } - } -} - -/****************************************************************************** - * Dynamic message typesupport - ******************************************************************************/ -rmw_ret_t -rmw_take_dynamic_message( - const rmw_subscription_t * subscription, - rosidl_dynamic_typesupport_dynamic_data_t * dynamic_message, - bool * taken, - rmw_subscription_allocation_t * allocation) -{ - static_cast(subscription); - static_cast(dynamic_message); - static_cast(taken); - static_cast(allocation); - - RMW_SET_ERROR_MSG("rmw_take_dynamic_message: unimplemented"); - return RMW_RET_UNSUPPORTED; -} - -rmw_ret_t -rmw_take_dynamic_message_with_info( - const rmw_subscription_t * subscription, - rosidl_dynamic_typesupport_dynamic_data_t * dynamic_message, - bool * taken, - rmw_message_info_t * message_info, - rmw_subscription_allocation_t * allocation) -{ - static_cast(subscription); - static_cast(dynamic_message); - static_cast(taken); - static_cast(message_info); - static_cast(allocation); - - RMW_SET_ERROR_MSG("rmw_take_dynamic_message_with_info: unimplemented"); - return RMW_RET_UNSUPPORTED; -} - -rmw_ret_t -rmw_serialization_support_init( - const char * serialization_lib_name, - rcutils_allocator_t * allocator, - rosidl_dynamic_typesupport_serialization_support_t * serialization_support) -{ - static_cast(serialization_lib_name); - static_cast(allocator); - static_cast(serialization_support); - - RMW_SET_ERROR_MSG("rmw_serialization_support_init: unimplemented"); - return RMW_RET_UNSUPPORTED; -}