From 94f2b02478e96bf5cb4637964311d1cbd1622de3 Mon Sep 17 00:00:00 2001 From: William Woodall Date: Wed, 21 Nov 2018 13:51:41 -0600 Subject: [PATCH] add missing rmw_shutdown --- rmw_fastrtps_cpp/src/rmw_init.cpp | 14 ++++++++++++++ rmw_fastrtps_dynamic_cpp/src/rmw_init.cpp | 14 ++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/rmw_fastrtps_cpp/src/rmw_init.cpp b/rmw_fastrtps_cpp/src/rmw_init.cpp index 10c48a043..bb5b13e7c 100644 --- a/rmw_fastrtps_cpp/src/rmw_init.cpp +++ b/rmw_fastrtps_cpp/src/rmw_init.cpp @@ -82,4 +82,18 @@ rmw_init(const rmw_init_options_t * options, rmw_context_t * context) context->impl = nullptr; return RMW_RET_OK; } + +rmw_ret_t +rmw_shutdown(rmw_context_t * context) +{ + RCUTILS_CHECK_ARGUMENT_FOR_NULL(context, RMW_RET_INVALID_ARGUMENT); + RMW_CHECK_TYPE_IDENTIFIERS_MATCH( + context, + context->implementation_identifier, + eprosima_fastrtps_identifier, + return RMW_RET_INCORRECT_RMW_IMPLEMENTATION); + RCUTILS_CHECK_ARGUMENT_FOR_NULL(context->impl, RMW_RET_INVALID_ARGUMENT); + *context = rmw_get_zero_initialized_context(); + return RMW_RET_OK; +} } // extern "C" diff --git a/rmw_fastrtps_dynamic_cpp/src/rmw_init.cpp b/rmw_fastrtps_dynamic_cpp/src/rmw_init.cpp index 937493ac0..778991793 100644 --- a/rmw_fastrtps_dynamic_cpp/src/rmw_init.cpp +++ b/rmw_fastrtps_dynamic_cpp/src/rmw_init.cpp @@ -82,4 +82,18 @@ rmw_init(const rmw_init_options_t * options, rmw_context_t * context) context->impl = nullptr; return RMW_RET_OK; } + +rmw_ret_t +rmw_shutdown(rmw_context_t * context) +{ + RCUTILS_CHECK_ARGUMENT_FOR_NULL(context, RMW_RET_INVALID_ARGUMENT); + RMW_CHECK_TYPE_IDENTIFIERS_MATCH( + context, + context->implementation_identifier, + eprosima_fastrtps_identifier, + return RMW_RET_INCORRECT_RMW_IMPLEMENTATION); + RCUTILS_CHECK_ARGUMENT_FOR_NULL(context->impl, RMW_RET_INVALID_ARGUMENT); + *context = rmw_get_zero_initialized_context(); + return RMW_RET_OK; +} } // extern "C"