Skip to content

Commit

Permalink
Merge pull request #20 from irobot-ros/asoragna/allow-null-callback
Browse files Browse the repository at this point in the history
allow rmw event callback to be NULL to unset them
  • Loading branch information
iRobot ROS authored Apr 20, 2021
2 parents 7a366e1 + 08a1c69 commit dc6abbd
Show file tree
Hide file tree
Showing 8 changed files with 12 additions and 12 deletions.
4 changes: 2 additions & 2 deletions rcl/include/rcl/client.h
Original file line number Diff line number Diff line change
Expand Up @@ -427,10 +427,10 @@ rcl_client_is_valid(const rcl_client_t * client);
* <i>[1] rmw implementation defined</i>
*
* \param[in] client The client on which to set the callback
* \param[in] callback The callback to be called when new responses arrive
* \param[in] callback The callback to be called when new responses arrive, may be NULL
* \param[in] user_data Given to the callback when called later, may be NULL
* \return `RCL_RET_OK` if callback was set to the listener, or
* \return `RCL_RET_INVALID_ARGUMENT` if `client` or `callback` is NULL, or
* \return `RCL_RET_INVALID_ARGUMENT` if `client` is NULL, or
* \return `RCL_RET_UNSUPPORTED` if the API is not implemented in the dds implementation
*/
RCL_PUBLIC
Expand Down
4 changes: 2 additions & 2 deletions rcl/include/rcl/event.h
Original file line number Diff line number Diff line change
Expand Up @@ -217,10 +217,10 @@ rcl_event_is_valid(const rcl_event_t * event);
* <i>[1] rmw implementation defined</i>
*
* \param[in] event The event on which to set the callback
* \param[in] callback The callback to be called when new events occur
* \param[in] callback The callback to be called when new events occur, may be NULL
* \param[in] user_data Given to the callback when called later, may be NULL
* \return `RCL_RET_OK` if callback was set to the listener, or
* \return `RCL_RET_INVALID_ARGUMENT` if `event` or `callback` is NULL, or
* \return `RCL_RET_INVALID_ARGUMENT` if `event` is NULL, or
* \return `RCL_RET_UNSUPPORTED` if the API is not implemented in the dds implementation
*/
RCL_PUBLIC
Expand Down
4 changes: 2 additions & 2 deletions rcl/include/rcl/service.h
Original file line number Diff line number Diff line change
Expand Up @@ -458,10 +458,10 @@ rcl_service_is_valid(const rcl_service_t * service);
* <i>[1] rmw implementation defined</i>
*
* \param[in] service The service on which to set the callback
* \param[in] callback The callback to be called when new requests arrive
* \param[in] callback The callback to be called when new requests arrive, may be NULL
* \param[in] user_data Given to the callback when called later, may be NULL
* \return `RCL_RET_OK` if callback was set to the listener, or
* \return `RCL_RET_INVALID_ARGUMENT` if `service` or `callback` is NULL, or
* \return `RCL_RET_INVALID_ARGUMENT` if `service` is NULL, or
* \return `RCL_RET_UNSUPPORTED` if the API is not implemented in the dds implementation
*/
RCL_PUBLIC
Expand Down
4 changes: 2 additions & 2 deletions rcl/include/rcl/subscription.h
Original file line number Diff line number Diff line change
Expand Up @@ -630,10 +630,10 @@ rcl_subscription_can_loan_messages(const rcl_subscription_t * subscription);
* <i>[1] rmw implementation defined</i>
*
* \param[in] subscription The subscription on which to set the callback
* \param[in] callback The callback to be called when new messages arrive
* \param[in] callback The callback to be called when new messages arrive, may be NULL
* \param[in] user_data Given to the callback when called later, may be NULL
* \return `RCL_RET_OK` if successful, or
* \return `RCL_RET_INVALID_ARGUMENT` if `subscription` or `callback` is NULL, or
* \return `RCL_RET_INVALID_ARGUMENT` if `subscription` is NULL, or
* \return `RCL_RET_UNSUPPORTED` if the API is not implemented in the dds implementation
*/
RCL_PUBLIC
Expand Down
2 changes: 1 addition & 1 deletion rcl/src/rcl/client.c
Original file line number Diff line number Diff line change
Expand Up @@ -291,7 +291,7 @@ rcl_client_set_on_new_response_callback(
// error state already set
return RCL_RET_INVALID_ARGUMENT;
}
RCL_CHECK_FOR_NULL_WITH_MSG(callback, "callback is invalid", return RCL_RET_INVALID_ARGUMENT);

return rmw_client_set_on_new_response_callback(
client->impl->rmw_handle,
callback,
Expand Down
2 changes: 1 addition & 1 deletion rcl/src/rcl/event.c
Original file line number Diff line number Diff line change
Expand Up @@ -228,7 +228,7 @@ rcl_event_set_callback(
// error state already set
return RCL_RET_INVALID_ARGUMENT;
}
RCL_CHECK_FOR_NULL_WITH_MSG(callback, "callback is invalid", return RCL_RET_INVALID_ARGUMENT);

return rmw_event_set_callback(
&event->impl->rmw_handle,
callback,
Expand Down
2 changes: 1 addition & 1 deletion rcl/src/rcl/service.c
Original file line number Diff line number Diff line change
Expand Up @@ -311,7 +311,7 @@ rcl_service_set_on_new_request_callback(
// error state already set
return RCL_RET_INVALID_ARGUMENT;
}
RCL_CHECK_FOR_NULL_WITH_MSG(callback, "callback is invalid", return RCL_RET_INVALID_ARGUMENT);

return rmw_service_set_on_new_request_callback(
service->impl->rmw_handle,
callback,
Expand Down
2 changes: 1 addition & 1 deletion rcl/src/rcl/subscription.c
Original file line number Diff line number Diff line change
Expand Up @@ -447,7 +447,7 @@ rcl_subscription_set_on_new_message_callback(
// error state already set
return RCL_RET_INVALID_ARGUMENT;
}
RCL_CHECK_FOR_NULL_WITH_MSG(callback, "callback is invalid", return RCL_RET_INVALID_ARGUMENT);

return rmw_subscription_set_on_new_message_callback(
subscription->impl->rmw_handle,
callback,
Expand Down

0 comments on commit dc6abbd

Please sign in to comment.