use new error handling API from rcutils (#314)
* use new error handling API from rcutils Signed-off-by: William Woodall <william@osrfoundation.org> * use semicolons after macros Signed-off-by: William Woodall <william@osrfoundation.org> * use new error handling API from rcutils Signed-off-by: William Woodall <william@osrfoundation.org> * minimize vertical whitespace Signed-off-by: William Woodall <william@osrfoundation.org> * use semicolons after macros Signed-off-by: William Woodall <william@osrfoundation.org>
This commit is contained in:
parent
765de78140
commit
4d8cb487f8
64 changed files with 1131 additions and 1314 deletions
|
@ -25,7 +25,6 @@ extern "C"
|
|||
#include "rcl_action/visibility_control.h"
|
||||
#include "rcl/wait.h"
|
||||
|
||||
|
||||
/// Add a rcl_action_client_t to a wait set.
|
||||
/**
|
||||
* This function will add the underlying service clients and subscriber to the wait set.
|
||||
|
|
|
@ -19,7 +19,6 @@ extern "C"
|
|||
|
||||
#include "rcl_action/goal_state_machine.h"
|
||||
|
||||
|
||||
typedef rcl_action_goal_state_t
|
||||
(* rcl_action_goal_event_handler)(rcl_action_goal_state_t, rcl_action_goal_event_t);
|
||||
|
||||
|
|
|
@ -29,15 +29,15 @@ rcl_action_get_goal_service_name(
|
|||
char ** goal_service_name)
|
||||
{
|
||||
RCL_CHECK_ALLOCATOR_WITH_MSG(&allocator, "allocator is invalid", return RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(action_name, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(goal_service_name, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(action_name, RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(goal_service_name, RCL_RET_INVALID_ARGUMENT);
|
||||
if (NULL != *goal_service_name) {
|
||||
RCL_SET_ERROR_MSG("writing action goal service name may leak memory", allocator);
|
||||
RCL_SET_ERROR_MSG("writing action goal service name may leak memory");
|
||||
return RCL_RET_INVALID_ARGUMENT;
|
||||
}
|
||||
*goal_service_name = rcutils_format_string(allocator, "%s/_action/send_goal", action_name);
|
||||
if (NULL == *goal_service_name) {
|
||||
RCL_SET_ERROR_MSG("failed to allocate memory for action goal service name", allocator);
|
||||
RCL_SET_ERROR_MSG("failed to allocate memory for action goal service name");
|
||||
return RCL_RET_BAD_ALLOC;
|
||||
}
|
||||
return RCL_RET_OK;
|
||||
|
@ -50,15 +50,15 @@ rcl_action_get_cancel_service_name(
|
|||
char ** cancel_service_name)
|
||||
{
|
||||
RCL_CHECK_ALLOCATOR_WITH_MSG(&allocator, "allocator is invalid", return RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(action_name, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(cancel_service_name, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(action_name, RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(cancel_service_name, RCL_RET_INVALID_ARGUMENT);
|
||||
if (NULL != *cancel_service_name) {
|
||||
RCL_SET_ERROR_MSG("writing action cancel service name may leak memory", allocator);
|
||||
RCL_SET_ERROR_MSG("writing action cancel service name may leak memory");
|
||||
return RCL_RET_INVALID_ARGUMENT;
|
||||
}
|
||||
*cancel_service_name = rcutils_format_string(allocator, "%s/_action/cancel_goal", action_name);
|
||||
if (NULL == *cancel_service_name) {
|
||||
RCL_SET_ERROR_MSG("failed to allocate memory for action cancel service name", allocator);
|
||||
RCL_SET_ERROR_MSG("failed to allocate memory for action cancel service name");
|
||||
return RCL_RET_BAD_ALLOC;
|
||||
}
|
||||
return RCL_RET_OK;
|
||||
|
@ -71,16 +71,16 @@ rcl_action_get_result_service_name(
|
|||
char ** result_service_name)
|
||||
{
|
||||
RCL_CHECK_ALLOCATOR_WITH_MSG(&allocator, "allocator is invalid", return RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(action_name, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(result_service_name, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(action_name, RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(result_service_name, RCL_RET_INVALID_ARGUMENT);
|
||||
if (NULL != *result_service_name) {
|
||||
RCL_SET_ERROR_MSG("writing action result service name may leak memory", allocator);
|
||||
RCL_SET_ERROR_MSG("writing action result service name may leak memory");
|
||||
return RCL_RET_INVALID_ARGUMENT;
|
||||
}
|
||||
|
||||
*result_service_name = rcutils_format_string(allocator, "%s/_action/get_result", action_name);
|
||||
if (NULL == *result_service_name) {
|
||||
RCL_SET_ERROR_MSG("failed to allocate memory for action result service name", allocator);
|
||||
RCL_SET_ERROR_MSG("failed to allocate memory for action result service name");
|
||||
return RCL_RET_BAD_ALLOC;
|
||||
}
|
||||
return RCL_RET_OK;
|
||||
|
@ -93,15 +93,15 @@ rcl_action_get_feedback_topic_name(
|
|||
char ** feedback_topic_name)
|
||||
{
|
||||
RCL_CHECK_ALLOCATOR_WITH_MSG(&allocator, "allocator is invalid", return RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(action_name, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(feedback_topic_name, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(action_name, RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(feedback_topic_name, RCL_RET_INVALID_ARGUMENT);
|
||||
if (NULL != *feedback_topic_name) {
|
||||
RCL_SET_ERROR_MSG("writing action feedback topic name may leak memory", allocator);
|
||||
RCL_SET_ERROR_MSG("writing action feedback topic name may leak memory");
|
||||
return RCL_RET_INVALID_ARGUMENT;
|
||||
}
|
||||
*feedback_topic_name = rcutils_format_string(allocator, "%s/_action/feedback", action_name);
|
||||
if (NULL == *feedback_topic_name) {
|
||||
RCL_SET_ERROR_MSG("failed to allocate memory for action feedback topic name", allocator);
|
||||
RCL_SET_ERROR_MSG("failed to allocate memory for action feedback topic name");
|
||||
return RCL_RET_BAD_ALLOC;
|
||||
}
|
||||
return RCL_RET_OK;
|
||||
|
@ -114,15 +114,15 @@ rcl_action_get_status_topic_name(
|
|||
char ** status_topic_name)
|
||||
{
|
||||
RCL_CHECK_ALLOCATOR_WITH_MSG(&allocator, "allocator is invalid", return RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(action_name, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(status_topic_name, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(action_name, RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(status_topic_name, RCL_RET_INVALID_ARGUMENT);
|
||||
if (NULL != *status_topic_name) {
|
||||
RCL_SET_ERROR_MSG("writing action status topic name may leak memory", allocator);
|
||||
RCL_SET_ERROR_MSG("writing action status topic name may leak memory");
|
||||
return RCL_RET_INVALID_ARGUMENT;
|
||||
}
|
||||
*status_topic_name = rcutils_format_string(allocator, "%s/_action/status", action_name);
|
||||
if (NULL == *status_topic_name) {
|
||||
RCL_SET_ERROR_MSG("failed to allocate memory for action status topic name", allocator);
|
||||
RCL_SET_ERROR_MSG("failed to allocate memory for action status topic name");
|
||||
return RCL_RET_BAD_ALLOC;
|
||||
}
|
||||
return RCL_RET_OK;
|
||||
|
|
|
@ -20,7 +20,6 @@ extern "C"
|
|||
|
||||
#include "rcl/error_handling.h"
|
||||
|
||||
|
||||
rcl_action_goal_info_t
|
||||
rcl_action_get_zero_initialized_goal_info(void)
|
||||
{
|
||||
|
@ -56,10 +55,10 @@ rcl_action_goal_status_array_init(
|
|||
const rcl_allocator_t allocator)
|
||||
{
|
||||
RCL_CHECK_ALLOCATOR_WITH_MSG(&allocator, "invalid allocator", return RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(status_array, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(status_array, RCL_RET_INVALID_ARGUMENT);
|
||||
// Ensure status array is zero initialized
|
||||
if (status_array->status_list.size > 0) {
|
||||
RCL_SET_ERROR_MSG("status_array already inititalized", allocator);
|
||||
RCL_SET_ERROR_MSG("status_array already inititalized");
|
||||
return RCL_RET_ALREADY_INIT;
|
||||
}
|
||||
// Allocate space for status array
|
||||
|
@ -78,7 +77,7 @@ rcl_action_goal_status_array_fini(
|
|||
const rcl_allocator_t allocator)
|
||||
{
|
||||
RCL_CHECK_ALLOCATOR_WITH_MSG(&allocator, "invalid allocator", return RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(status_array, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(status_array, RCL_RET_INVALID_ARGUMENT);
|
||||
if (!status_array->status_list.data) {
|
||||
return RCL_RET_INVALID_ARGUMENT;
|
||||
}
|
||||
|
@ -93,10 +92,10 @@ rcl_action_cancel_response_init(
|
|||
const rcl_allocator_t allocator)
|
||||
{
|
||||
RCL_CHECK_ALLOCATOR_WITH_MSG(&allocator, "invalid allocator", return RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(cancel_response, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(cancel_response, RCL_RET_INVALID_ARGUMENT);
|
||||
// Ensure cancel response is zero initialized
|
||||
if (cancel_response->goals_canceling.size > 0) {
|
||||
RCL_SET_ERROR_MSG("cancel_response already inititalized", allocator);
|
||||
RCL_SET_ERROR_MSG("cancel_response already inititalized");
|
||||
return RCL_RET_ALREADY_INIT;
|
||||
}
|
||||
// Allocate space for cancel response
|
||||
|
@ -115,7 +114,7 @@ rcl_action_cancel_response_fini(
|
|||
const rcl_allocator_t allocator)
|
||||
{
|
||||
RCL_CHECK_ALLOCATOR_WITH_MSG(&allocator, "invalid allocator", return RCL_RET_INVALID_ARGUMENT);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(cancel_response, RCL_RET_INVALID_ARGUMENT, allocator);
|
||||
RCL_CHECK_ARGUMENT_FOR_NULL(cancel_response, RCL_RET_INVALID_ARGUMENT);
|
||||
if (!cancel_response->goals_canceling.data) {
|
||||
return RCL_RET_INVALID_ARGUMENT;
|
||||
}
|
||||
|
|
|
@ -15,7 +15,6 @@
|
|||
|
||||
#include "rcl_action/types.h"
|
||||
|
||||
|
||||
TEST(TestActionTypes, test_get_zero_inititalized_goal_info)
|
||||
{
|
||||
rcl_action_goal_info_t goal_info = rcl_action_get_zero_initialized_goal_info();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue