Skip to content

Commit

Permalink
pass context to wait set and fini context (#252)
Browse files Browse the repository at this point in the history
* pass context to wait set and fini context

Signed-off-by: William Woodall <[email protected]>

* use nullptr in C++
  • Loading branch information
wjwwood authored Jan 25, 2019
1 parent 88aa8f8 commit 5259d90
Show file tree
Hide file tree
Showing 6 changed files with 42 additions and 6 deletions.
14 changes: 14 additions & 0 deletions rmw_fastrtps_cpp/src/rmw_init.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,20 @@ rmw_init(const rmw_init_options_t * options, rmw_context_t * context)

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);
// Nothing to do here for now.
// This is just the middleware's notification that shutdown was called.
return RMW_RET_OK;
}

rmw_ret_t
rmw_context_fini(rmw_context_t * context)
{
RCUTILS_CHECK_ARGUMENT_FOR_NULL(context, RMW_RET_INVALID_ARGUMENT);
RMW_CHECK_TYPE_IDENTIFIERS_MATCH(
Expand Down
4 changes: 2 additions & 2 deletions rmw_fastrtps_cpp/src/rmw_wait_set.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@
extern "C"
{
rmw_wait_set_t *
rmw_create_wait_set(size_t max_conditions)
rmw_create_wait_set(rmw_context_t * context, size_t max_conditions)
{
return rmw_fastrtps_shared_cpp::__rmw_create_wait_set(
eprosima_fastrtps_identifier, max_conditions);
eprosima_fastrtps_identifier, context, max_conditions);
}

rmw_ret_t
Expand Down
14 changes: 14 additions & 0 deletions rmw_fastrtps_dynamic_cpp/src/rmw_init.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,20 @@ rmw_init(const rmw_init_options_t * options, rmw_context_t * context)

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);
// Nothing to do here for now.
// This is just the middleware's notification that shutdown was called.
return RMW_RET_OK;
}

rmw_ret_t
rmw_context_fini(rmw_context_t * context)
{
RCUTILS_CHECK_ARGUMENT_FOR_NULL(context, RMW_RET_INVALID_ARGUMENT);
RMW_CHECK_TYPE_IDENTIFIERS_MATCH(
Expand Down
4 changes: 2 additions & 2 deletions rmw_fastrtps_dynamic_cpp/src/rmw_wait_set.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@
extern "C"
{
rmw_wait_set_t *
rmw_create_wait_set(size_t max_conditions)
rmw_create_wait_set(rmw_context_t * context, size_t max_conditions)
{
return rmw_fastrtps_shared_cpp::__rmw_create_wait_set(
eprosima_fastrtps_identifier, max_conditions);
eprosima_fastrtps_identifier, context, max_conditions);
}

rmw_ret_t
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -292,7 +292,7 @@ __rmw_wait(

RMW_FASTRTPS_SHARED_CPP_PUBLIC
rmw_wait_set_t *
__rmw_create_wait_set(const char * identifier, size_t max_conditions);
__rmw_create_wait_set(const char * identifier, rmw_context_t * context, size_t max_conditions);

RMW_FASTRTPS_SHARED_CPP_PUBLIC
rmw_ret_t
Expand Down
10 changes: 9 additions & 1 deletion rmw_fastrtps_shared_cpp/src/rmw_wait_set.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,16 @@
namespace rmw_fastrtps_shared_cpp
{
rmw_wait_set_t *
__rmw_create_wait_set(const char * identifier, size_t max_conditions)
__rmw_create_wait_set(const char * identifier, rmw_context_t * context, size_t max_conditions)
{
RCUTILS_CHECK_ARGUMENT_FOR_NULL(context, NULL);
RMW_CHECK_TYPE_IDENTIFIERS_MATCH(
init context,
context->implementation_identifier,
identifier,
// TODO(wjwwood): replace this with RMW_RET_INCORRECT_RMW_IMPLEMENTATION when refactored
return nullptr);

(void)max_conditions;
rmw_wait_set_t * wait_set = rmw_wait_set_allocate();
CustomWaitsetInfo * wait_set_info = nullptr;
Expand Down

0 comments on commit 5259d90

Please sign in to comment.