19#include "nros/nros_config_generated.h"
51#ifndef NROS_GENERATED_H
52#define NROS_GENERATED_H
59#define NROS_MAX_LOCATOR_LEN 128
64#define NROS_MAX_NAME_LEN 64
69#define NROS_MAX_NAMESPACE_LEN 128
78#define MAX_RMW_NAME_LEN 32
83#define NROS_MAX_TOPIC_LEN 256
88#define NROS_MAX_SERVICE_NAME_LEN 256
93#define NROS_MAX_ACTION_NAME_LEN 256
98#define NROS_MAX_TYPE_NAME_LEN 256
103#define NROS_MAX_TYPE_HASH_LEN 128
112#define NROS_MAX_CONCURRENT_GOALS 4
117#define NROS_MAX_PARAM_NAME_LEN 64
122#define NROS_MAX_PARAM_STRING_LEN 128
160#define NROS_DOMAIN_ID_INHERIT UINT32_MAX
700#if defined(__cplusplus) || __STDC_VERSION__ >= 202311L
711#if __STDC_VERSION__ >= 202311L
723#if defined(__cplusplus) || __STDC_VERSION__ >= 202311L
732#if __STDC_VERSION__ >= 202311L
744#if defined(__cplusplus) || __STDC_VERSION__ >= 202311L
753#if __STDC_VERSION__ >= 202311L
1065 int32_t (*
read)(
void *
user_data, uint8_t *buf,
size_t len, uint32_t timeout_ms);
1090 const uint8_t *feedback,
1091 size_t feedback_len,
1099 const uint8_t *result,
1404 const uint8_t *goal_request,
1721 void *user_context);
1737 void *user_context);
1788 void *user_context);
1859 const uint8_t *attachment,
1860 size_t attachment_len,
1927 uint8_t *response_data,
1928 size_t response_capacity,
1929 size_t *response_len,
2405#define NROS_RET_OK 0
2410#define NROS_RET_ERROR -1
2415#define NROS_RET_TIMEOUT -2
2420#define NROS_RET_INVALID_ARGUMENT -3
2425#define NROS_RET_NOT_FOUND -4
2430#define NROS_RET_ALREADY_EXISTS -5
2435#define NROS_RET_FULL -6
2440#define NROS_RET_NOT_INIT -7
2445#define NROS_RET_BAD_SEQUENCE -8
2450#define NROS_RET_SERVICE_FAILED -9
2455#define NROS_RET_PUBLISH_FAILED -10
2460#define NROS_RET_SUBSCRIPTION_FAILED -11
2465#define NROS_RET_NOT_ALLOWED -12
2470#define NROS_RET_REJECTED -13
2476#define NROS_RET_TRY_AGAIN -14
2484#define NROS_RET_REENTRANT -15
2491#define NROS_RET_UNSUPPORTED -16
2569 const uint8_t *origin,
2579 const uint8_t *origin,
2588 const uint8_t *origin,
2598 const uint8_t *origin,
2607 const uint8_t *origin,
2617 const uint8_t *origin,
2626 const uint8_t *origin,
2636 const uint8_t *origin,
2645 const uint8_t *origin,
2655 const uint8_t *origin,
2665 const uint8_t *origin,
2674 const uint8_t *origin,
2683 const uint8_t *origin,
2697 const uint8_t *origin,
2707 const uint8_t *origin,
2716 const uint8_t *origin,
2725 const uint8_t *origin,
2734 const uint8_t *origin,
2743 const uint8_t *origin,
2752 const uint8_t *origin,
2761 const uint8_t *origin,
2770 const uint8_t *origin,
2779 const uint8_t *origin,
2788 const uint8_t *origin,
2798 const uint8_t *origin,
2826 int64_t *nanoseconds);
2899 const char *default_value);
3059 const char *action_name,
3101 uint32_t timeout_ms);
3126 const uint8_t *goal,
3149 size_t result_capacity,
3150 size_t *result_len);
3177 const uint8_t *goal,
3251 const char *action_name);
3260 const uint8_t *goal_cdr,
3262 uint8_t (*goal_id_out)[16]);
3280 const uint8_t (*goal_id)[16]);
3297 const uint8_t (*goal_id)[16]);
3355 uint8_t (*goal_id_out)[16]);
3439 const char *action_name,
3458 const uint8_t *feedback,
3459 size_t feedback_len);
3470 const uint8_t *result,
3481 const uint8_t *result,
3492 const uint8_t *result,
3562 const char *action_name);
3580 uint8_t (*goal_id_out)[16],
3581 int64_t *sequence_number_out);
3589 const uint8_t (*goal_id)[16],
3590 int64_t sequence_number);
3598 int64_t sequence_number);
3608 const uint8_t (*goal_id)[16],
3609 const uint8_t *feedback_cdr,
3610 size_t feedback_len);
3621 const uint8_t (*goal_id)[16],
3623 const uint8_t *result_cdr,
3641 uint8_t (*goal_id_out)[16],
3642 int64_t *sequence_number_out,
3656 int64_t sequence_number,
3658 const uint8_t (*accepted)[16],
3659 size_t accepted_count);
3673 const uint8_t *default_result_cdr,
3674 size_t default_result_len);
3731 void *_user_context);
3746 uint32_t _deadline_ms,
3748 void *_user_context);
3760 void *_user_context);
3773 void *_user_context);
3786 uint32_t _deadline_ms,
3788 void *_user_context);
3993 const char *topic_name,
3994 const char *type_name,
3995 const char *type_hash,
4116 uint64_t period_ns);
4126 uint64_t period_ns);
4175 uint32_t major_frame_us);
4285 uint8_t transition_id);
4381 uint8_t transition_id);
4738 const uint8_t *data,
4774 void (*size_cb)(
size_t *out_total_len,
void *user_ctx),
4775 void (*chunk_cb)(uint8_t *out_buf,
4777 size_t *out_written,
4833 size_t requested_len,
4975 const char *service_name,
5022 const char *service_name);
5077 int64_t *sequence_number);
5092 int64_t sequence_number,
5093 const uint8_t *data,
5107 uint8_t *_request_data,
5108 size_t _request_capacity,
5109 size_t *_request_len,
5110 int64_t *_sequence_number);
5124 int64_t _sequence_number,
5125 const uint8_t *_response_data,
5126 size_t _response_len);
5215 const char *service_name,
5264 const char *service_name);
5277 const uint8_t *data,
5356 uint32_t timeout_ms);
5383 const uint8_t *request_data,
5384 size_t request_len);
5397 uint8_t *response_data,
5398 size_t response_capacity,
5399 size_t *response_len);
5427 const uint8_t *request_data,
5429 uint8_t *response_data,
5430 size_t response_capacity,
5431 size_t *response_len);
5499 const char *topic_name,
5513 const char *topic_name,
5556 const char *topic_name,
5592 const char *topic_name);
5607 const char *topic_name,
5705 const uint8_t **out_buf,
5835 const char *session_name);
5977 uint64_t current_time_ns);
nros_ret_t nros_set_custom_transport(const struct nros_transport_ops_t *ops)
nros_ret_t nros_executor_init(struct nros_executor_t *executor, const struct nros_support_t *support, size_t max_handles)
nros_ret_t nros_action_server_accept_goal_raw(struct nros_action_server_t *server, const uint8_t(*goal_id)[16], int64_t sequence_number)
nros_ret_t nros_action_server_set_get_result_wake_callback(struct nros_action_server_t *server, struct nros_wake_state_t *state, void(*cb)(void *), void *ctx)
bool(* nros_service_callback_t)(const uint8_t *request_data, size_t request_len, uint8_t *response_data, size_t response_capacity, size_t *response_len, void *context)
Definition nros_generated.h:1925
nros_ret_t nros_executor_fini(struct nros_executor_t *executor)
int32_t nros_action_client_try_recv_goal_response_raw(struct nros_action_client_t *client, uint8_t *buf, size_t buf_len)
int32_t nros_cdr_write_u32(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, uint32_t value)
void(* nros_guard_condition_callback_t)(void *context)
Definition nros_generated.h:2133
int nros_executor_get_handle_count(const struct nros_executor_t *executor)
void(* nros_subscription_info_callback_t)(const uint8_t *data, size_t len, const uint8_t *attachment, size_t attachment_len, void *context)
Definition nros_generated.h:1857
void(* nros_accepted_callback_t)(struct nros_action_server_t *server, const struct nros_goal_handle_t *goal, void *context)
Definition nros_generated.h:1424
nros_ret_t nros_node_set_qos_overrides(struct nros_node_t *node, const struct nros_qos_override_t *overrides, size_t len)
int32_t nros_action_server_try_recv_cancel_request_raw(struct nros_action_server_t *server, uint8_t(*goal_id_out)[16], int64_t *sequence_number_out, enum nros_goal_status_t *current_status_out)
nros_ret_t nros_action_server_publish_feedback_raw(struct nros_action_server_t *server, const uint8_t(*goal_id)[16], const uint8_t *feedback_cdr, size_t feedback_len)
nros_ret_t nros_publisher_fini(struct nros_publisher_t *publisher)
struct nros_service_options_t nros_service_get_default_options(void)
#define MAX_RMW_NAME_LEN
Definition nros_generated.h:78
#define NROS_MAX_TYPE_NAME_LEN
Definition nros_generated.h:98
int32_t nros_cdr_write_u64(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, uint64_t value)
nros_ret_t nros_executor_register_parameter_services(struct nros_executor_t *executor)
#define NROS_MAX_PARAM_NAME_LEN
Definition nros_generated.h:117
int32_t nros_cdr_read_f64(const uint8_t **ptr, const uint8_t *end, const uint8_t *origin, double *value)
nros_ret_t nros_executor_ping(struct nros_executor_t *executor, int32_t timeout_ms)
struct Option_LifecycleCallbackFnCtx Option_LifecycleCallbackFnCtx
Definition nros_generated.h:760
nros_ret_t nros_action_client_set_feedback_wake_callback(struct nros_action_client_t *client, struct nros_wake_state_t *state, void(*cb)(void *), void *ctx)
nros_ret_t nros_subscription_init_with_options(struct nros_subscription_t *subscription, const struct nros_node_t *node, const struct nros_message_type_t *type_info, const char *topic_name, nros_subscription_callback_t callback, void *context, const struct nros_qos_t *qos, const struct nros_subscription_options_t *options)
nros_ret_t nros_node_init(struct nros_node_t *node, const struct nros_support_t *support, const char *name, const char *namespace_)
int32_t nros_cdr_read_string(const uint8_t **ptr, const uint8_t *end, const uint8_t *origin, char *value, size_t max_len)
int32_t nros_cdr_read_u16(const uint8_t **ptr, const uint8_t *end, const uint8_t *origin, uint16_t *value)
nros_ret_t nros_client_init_polling(struct nros_client_t *client, const struct nros_node_t *node, const struct nros_service_type_t *type_info, const char *service_name)
nros_ret_t nros_client_wait_for_service(struct nros_client_t *client, uint32_t timeout_ms)
nros_clock_state_t
Definition nros_generated.h:187
@ NROS_CLOCK_STATE_SHUTDOWN
Definition nros_generated.h:199
@ NROS_CLOCK_STATE_UNINITIALIZED
Definition nros_generated.h:191
@ NROS_CLOCK_STATE_READY
Definition nros_generated.h:195
nros_ret_t nros_clock_fini(struct nros_clock_t *clock)
const char * nros_service_get_service_name(const struct nros_service_t *service)
nros_ret_t nros_publisher_init(struct nros_publisher_t *publisher, const struct nros_node_t *node, const struct nros_message_type_t *type_info, const char *topic_name)
int32_t nros_action_server_try_handle_get_result_raw(struct nros_action_server_t *server, const uint8_t *default_result_cdr, size_t default_result_len)
nros_ret_t nros_guard_condition_trigger(struct nros_guard_condition_t *guard)
nros_ret_t nros_lifecycle_register_on_cleanup(struct nros_lifecycle_state_machine_t *sm, struct Option_LifecycleCallbackFnCtx cb, void *context)
nros_ret_t nros_executor_register_service(struct nros_executor_t *executor, struct nros_service_t *service)
bool nros_clock_is_valid(const struct nros_clock_t *clock)
bool nros_timer_is_valid(const struct nros_timer_t *timer)
#define NROS_MAX_LOCATOR_LEN
Definition nros_generated.h:59
nros_ret_t nros_support_fini(struct nros_support_t *support)
enum nros_goal_response_t(* nros_goal_callback_t)(struct nros_action_server_t *server, const struct nros_goal_handle_t *goal, const uint8_t *goal_request, size_t goal_len, void *context)
Definition nros_generated.h:1402
bool nros_executor_trigger_all(const bool *ready, size_t count, void *context)
void nros_platform_critical_section_release(uint32_t token)
nros_sched_class_t
Definition nros_generated.h:703
@ NROS_SCHED_CLASS_SPORADIC
Definition nros_generated.h:706
@ NROS_SCHED_CLASS_FIFO
Definition nros_generated.h:704
@ NROS_SCHED_CLASS_BEST_EFFORT
Definition nros_generated.h:707
@ NROS_SCHED_CLASS_EDF
Definition nros_generated.h:705
@ NROS_SCHED_CLASS_TIME_TRIGGERED
Definition nros_generated.h:708
void(* nros_subscription_callback_t)(const uint8_t *data, size_t len, void *context)
Definition nros_generated.h:1634
int32_t nros_cdr_read_i16(const uint8_t **ptr, const uint8_t *end, const uint8_t *origin, int16_t *value)
nros_guard_condition_state_t
Definition nros_generated.h:680
@ NROS_GUARD_CONDITION_STATE_SHUTDOWN
Definition nros_generated.h:692
@ NROS_GUARD_CONDITION_STATE_INITIALIZED
Definition nros_generated.h:688
@ NROS_GUARD_CONDITION_STATE_UNINITIALIZED
Definition nros_generated.h:684
struct nros_action_client_options_t nros_action_client_get_default_options(void)
uint64_t nros_timer_get_time_until_next_call(const struct nros_timer_t *timer, uint64_t current_time_ns)
nros_action_server_state_t
Definition nros_generated.h:410
@ NROS_ACTION_SERVER_STATE_INITIALIZED
Definition nros_generated.h:420
@ NROS_ACTION_SERVER_STATE_SHUTDOWN
Definition nros_generated.h:424
@ NROS_ACTION_SERVER_STATE_POLLING
Definition nros_generated.h:430
@ NROS_ACTION_SERVER_STATE_UNINITIALIZED
Definition nros_generated.h:414
nros_ret_t nros_guard_condition_clear(struct nros_guard_condition_t *guard)
const struct nros_qos_t NROS_QOS_SERVICES
int32_t nros_subscription_try_recv_sequence(struct nros_subscription_t *subscription, uint8_t *buf, size_t per_msg_cap, size_t max_msgs, size_t *out_lens)
int32_t nros_subscription_borrow(struct nros_subscription_t *subscription, const uint8_t **out_buf, size_t *out_len, void **out_token)
struct nros_node_t nros_node_get_zero_initialized(void)
nros_ret_t nros_subscription_init(struct nros_subscription_t *subscription, const struct nros_node_t *node, const struct nros_message_type_t *type_info, const char *topic_name, nros_subscription_callback_t callback, void *context)
nros_ret_t nros_publisher_set_liveliness_lost_callback(struct nros_publisher_t *_pub_, nros_event_publisher_count_cb_t _cb, void *_user_context)
int32_t nros_service_try_recv_request_raw(struct nros_service_t *service, uint8_t *buf, size_t buf_len, int64_t *sequence_number)
int32_t nros_cdr_write_bool(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, bool value)
nros_ret_t nros_service_send_reply_raw(struct nros_service_t *service, int64_t sequence_number, const uint8_t *data, size_t len)
uint8_t nros_lifecycle_get_state(const struct nros_lifecycle_state_machine_t *sm)
bool nros_publisher_is_valid(const struct nros_publisher_t *publisher)
nros_ret_t nros_action_client_set_result_callback(struct nros_action_client_t *client, nros_result_callback_t callback, void *context)
struct nros_client_options_t nros_client_get_default_options(void)
struct nros_subscription_options_t nros_subscription_get_default_options(void)
int32_t nros_cdr_read_i8(const uint8_t **ptr, const uint8_t *end, const uint8_t *origin, int8_t *value)
bool nros_executor_trigger_any(const bool *ready, size_t count, void *context)
nros_ret_t nros_support_init_named(struct nros_support_t *support, const char *locator, uint8_t domain_id, const char *session_name)
nros_ret_t nros_service_init(struct nros_service_t *service, const struct nros_node_t *node, const struct nros_service_type_t *type_info, const char *service_name, nros_service_callback_t callback, void *context)
nros_ret_t nros_action_client_set_feedback_callback(struct nros_action_client_t *client, nros_feedback_callback_t callback, void *context)
nros_ret_t nros_executor_register_timer(struct nros_executor_t *executor, struct nros_timer_t *timer)
nros_ret_t nros_lifecycle_register_on_configure(struct nros_lifecycle_state_machine_t *sm, struct Option_LifecycleCallbackFnCtx cb, void *context)
uint8_t nros_sched_context_id_t
Definition nros_generated.h:1226
int32_t nros_cdr_read_i64(const uint8_t **ptr, const uint8_t *end, const uint8_t *origin, int64_t *value)
int32_t nros_cdr_read_i32(const uint8_t **ptr, const uint8_t *end, const uint8_t *origin, int32_t *value)
nros_ret_t nros_action_canceled(struct nros_action_server_t *server, const struct nros_goal_handle_t *goal, const uint8_t *result, size_t result_len)
struct nros_support_t nros_support_get_zero_initialized(void)
nros_ret_t nros_guard_condition_set_callback(struct nros_guard_condition_t *guard, nros_guard_condition_callback_t callback, void *context)
void(* nros_feedback_callback_t)(const struct nros_goal_uuid_t *goal_uuid, const uint8_t *feedback, size_t feedback_len, void *context)
Definition nros_generated.h:1089
size_t nros_heap_platform_used_bytes(void)
uint64_t nros_timer_get_period(const struct nros_timer_t *timer)
nros_ret_t nros_client_init_with_qos(struct nros_client_t *client, const struct nros_node_t *node, const struct nros_service_type_t *type_info, const char *service_name, const struct nros_qos_t *qos)
nros_ret_t nros_client_fini(struct nros_client_t *client)
struct nros_timer_t nros_timer_get_zero_initialized(void)
#define NROS_MAX_TOPIC_LEN
Definition nros_generated.h:83
nros_ret_t nros_action_client_init_with_options(struct nros_action_client_t *client, const struct nros_node_t *node, const char *action_name, const struct nros_action_type_t *type_info, const struct nros_action_client_options_t *options)
size_t nros_param_server_get_count(const struct nros_param_server_t *server)
nros_ret_t nros_executor_register_action_client(struct nros_executor_t *executor, struct nros_action_client_t *client)
nros_ret_t nros_action_client_set_goal_response_callback(struct nros_action_client_t *client, nros_goal_response_callback_t callback, void *context)
bool nros_action_client_action_server_is_ready(const struct nros_action_client_t *client, struct nros_executor_t *executor)
nros_ret_t nros_node_fini(struct nros_node_t *node)
nros_executor_state_t
Definition nros_generated.h:269
@ NROS_EXECUTOR_STATE_SHUTDOWN
Definition nros_generated.h:285
@ NROS_EXECUTOR_STATE_UNINITIALIZED
Definition nros_generated.h:273
@ NROS_EXECUTOR_STATE_SPINNING
Definition nros_generated.h:281
@ NROS_EXECUTOR_STATE_INITIALIZED
Definition nros_generated.h:277
nros_ret_t nros_clock_get_now(const struct nros_clock_t *clock, struct nros_time_t *time_out)
nros_ret_t nros_param_declare_string(struct nros_param_server_t *server, const char *name, const char *default_value)
nros_ret_t nros_action_server_init_polling(struct nros_action_server_t *server, const struct nros_node_t *node, const struct nros_action_type_t *type_info, const char *action_name)
nros_ret_t nros_timer_cancel(struct nros_timer_t *timer)
nros_ret_t nros_executor_register_time_triggered_dispatcher(struct nros_executor_t *executor, uint32_t major_frame_us)
struct nros_subscription_t nros_subscription_get_zero_initialized(void)
nros_ret_t nros_executor_set_timeout(struct nros_executor_t *executor, uint64_t timeout_ns)
bool nros_subscription_is_valid(const struct nros_subscription_t *subscription)
nros_ret_t nros_action_send_goal_async(struct nros_action_client_t *client, const uint8_t *goal, size_t goal_len, struct nros_goal_uuid_t *goal_uuid)
nros_qos_liveliness_t
Definition nros_generated.h:510
@ NROS_QOS_LIVELINESS_NONE
Definition nros_generated.h:514
@ NROS_QOS_LIVELINESS_MANUAL_BY_TOPIC
Definition nros_generated.h:522
@ NROS_QOS_LIVELINESS_MANUAL_BY_NODE
Definition nros_generated.h:526
@ NROS_QOS_LIVELINESS_AUTOMATIC
Definition nros_generated.h:518
nros_ret_t nros_lifecycle_register_on_shutdown(struct nros_lifecycle_state_machine_t *sm, struct Option_LifecycleCallbackFnCtx cb, void *context)
int32_t nros_action_client_try_recv_result_raw(struct nros_action_client_t *client, uint8_t *buf, size_t buf_len)
int32_t nros_action_server_try_recv_goal_request_raw(struct nros_action_server_t *server, uint8_t *buf, size_t buf_len, uint8_t(*goal_id_out)[16], int64_t *sequence_number_out)
nros_ret_t nros_executor_stop(struct nros_executor_t *executor)
struct nros_time_t nros_time_add(struct nros_time_t time, struct nros_duration_t duration)
nros_ret_t nros_action_client_set_result_wake_callback(struct nros_action_client_t *client, struct nros_wake_state_t *state, void(*cb)(void *), void *ctx)
nros_ret_t nros_subscription_set_wake_callback(struct nros_subscription_t *subscription, struct nros_wake_state_t *state, void(*cb)(void *), void *ctx)
nros_ret_t nros_client_init_with_options(struct nros_client_t *client, const struct nros_node_t *node, const struct nros_service_type_t *type_info, const char *service_name, const struct nros_qos_t *qos, const struct nros_client_options_t *options)
bool nros_executor_trigger_always(const bool *ready, size_t count, void *context)
nros_ret_t nros_executor_lifecycle_register_on_deactivate(struct nros_executor_t *executor, struct Option_LifecycleCallbackFnCtx cb, void *context)
int32_t nros_cdr_write_f32(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, float value)
size_t nros_platform_heap_used_bytes(void)
nros_ret_t nros_executor_register_action_server(struct nros_executor_t *executor, struct nros_action_server_t *server)
nros_ret_t nros_guard_condition_fini(struct nros_guard_condition_t *guard)
nros_ret_t nros_client_set_response_callback(struct nros_client_t *client, nros_response_callback_t callback, void *context)
bool nros_executor_has_param(struct nros_executor_t *executor, const char *name)
nros_ret_t nros_publisher_publish_streamed(const struct nros_publisher_t *publisher, void(*size_cb)(size_t *out_total_len, void *user_ctx), void(*chunk_cb)(uint8_t *out_buf, size_t cap, size_t *out_written, void *user_ctx), void *user_ctx)
nros_ret_t nros_client_server_available(struct nros_client_t *client, int32_t *out)
nros_ret_t nros_lifecycle_change_state(struct nros_lifecycle_state_machine_t *sm, uint8_t transition_id)
nros_ret_t nros_subscription_init_polling_with_qos(struct nros_subscription_t *subscription, const struct nros_node_t *node, const struct nros_message_type_t *type_info, const char *topic_name, const struct nros_qos_t *qos)
nros_ret_t nros_subscription_set_requested_deadline_missed_callback(struct nros_subscription_t *_sub, uint32_t _deadline_ms, nros_event_subscriber_count_cb_t _cb, void *_user_context)
nros_ret_t nros_subscription_set_liveliness_changed_callback(struct nros_subscription_t *_sub, nros_event_liveliness_changed_cb_t _cb, void *_user_context)
nros_ret_t nros_executor_set_trigger(struct nros_executor_t *executor, nros_executor_trigger_t trigger, void *context)
int32_t nros_client_try_recv_reply_raw(struct nros_client_t *client, uint8_t *buf, size_t buf_len)
nros_ret_t nros_subscription_release(struct nros_subscription_t *subscription, void *token)
nros_ret_t nros_action_try_recv_feedback(struct nros_action_client_t *client)
nros_ret_t nros_executor_spin_one_period(struct nros_executor_t *executor, uint64_t period_ns)
nros_ret_t nros_action_server_set_goal_wake_callback(struct nros_action_server_t *server, struct nros_wake_state_t *state, void(*cb)(void *), void *ctx)
nros_ret_t nros_publish_raw(const struct nros_publisher_t *publisher, const uint8_t *data, size_t len)
nros_qos_history_t
Definition nros_generated.h:496
@ NROS_QOS_HISTORY_KEEP_LAST
Definition nros_generated.h:500
@ NROS_QOS_HISTORY_KEEP_ALL
Definition nros_generated.h:504
nros_param_server_state_t
Definition nros_generated.h:205
@ NROS_PARAM_SERVER_STATE_SHUTDOWN
Definition nros_generated.h:217
@ NROS_PARAM_SERVER_STATE_READY
Definition nros_generated.h:213
@ NROS_PARAM_SERVER_STATE_UNINITIALIZED
Definition nros_generated.h:209
nros_ret_t nros_executor_create_sched_context(struct nros_executor_t *executor, const struct nros_sched_context_t *cfg, nros_sched_context_id_t *out_sc_id)
nros_ret_t nros_param_server_set_callback(struct nros_param_server_t *server, nros_param_callback_t callback, void *context)
void nros_platform_dealloc(void *ptr)
nros_action_client_state_t
Definition nros_generated.h:330
@ NROS_ACTION_CLIENT_STATE_UNINITIALIZED
Definition nros_generated.h:334
@ NROS_ACTION_CLIENT_STATE_POLLING
Definition nros_generated.h:350
@ NROS_ACTION_CLIENT_STATE_INITIALIZED
Definition nros_generated.h:340
@ NROS_ACTION_CLIENT_STATE_SHUTDOWN
Definition nros_generated.h:344
int32_t nros_action_server_active_goal_count_raw(struct nros_action_server_t *server)
struct nros_publisher_options_t nros_publisher_get_default_options(void)
void(* nros_goal_response_callback_t)(const struct nros_goal_uuid_t *goal_uuid, bool accepted, void *context)
Definition nros_generated.h:1082
nros_ret_t nros_publisher_commit(const struct nros_publisher_t *publisher, void *token, size_t actual_len)
nros_ret_t nros_action_server_init(struct nros_action_server_t *server, const struct nros_node_t *node, const char *action_name, const struct nros_action_type_t *type_info, nros_goal_callback_t goal_callback, nros_cancel_callback_t cancel_callback, nros_accepted_callback_t accepted_callback, void *context)
bool nros_client_is_valid(const struct nros_client_t *client)
nros_publisher_state_t
Definition nros_generated.h:572
@ NROS_PUBLISHER_STATE_INITIALIZED
Definition nros_generated.h:580
@ NROS_PUBLISHER_STATE_SHUTDOWN
Definition nros_generated.h:584
@ NROS_PUBLISHER_STATE_UNINITIALIZED
Definition nros_generated.h:576
nros_ret_t nros_executor_declare_param_string(struct nros_executor_t *executor, const char *name, const char *value)
nros_ret_t nros_service_init_with_qos(struct nros_service_t *service, const struct nros_node_t *node, const struct nros_service_type_t *type_info, const char *service_name, nros_service_callback_t callback, void *context, const struct nros_qos_t *qos)
nros_ret_t nros_guard_condition_init(struct nros_guard_condition_t *guard, const struct nros_support_t *support)
int32_t nros_cdr_read_f32(const uint8_t **ptr, const uint8_t *end, const uint8_t *origin, float *value)
const struct nros_qos_t NROS_QOS_DEFAULT
nros_ret_t nros_support_init(struct nros_support_t *support, const char *locator, uint8_t domain_id)
nros_ret_t nros_action_server_complete_goal_raw(struct nros_action_server_t *server, const uint8_t(*goal_id)[16], enum nros_goal_status_t status, const uint8_t *result_cdr, size_t result_len)
const struct nros_qos_t NROS_QOS_SENSOR_DATA
bool nros_service_is_valid(const struct nros_service_t *service)
uint64_t nros_platform_clock_us(void)
nros_ret_t nros_executor_register_lifecycle_services(struct nros_executor_t *executor)
const char * nros_publisher_get_topic_name(const struct nros_publisher_t *publisher)
struct nros_publisher_t nros_publisher_get_zero_initialized(void)
nros_ret_t nros_action_execute(struct nros_action_server_t *server, const struct nros_goal_handle_t *goal)
int64_t nros_time_to_nanoseconds(const struct nros_time_t *time)
nros_client_state_t
Definition nros_generated.h:652
@ NROS_CLIENT_STATE_INITIALIZED
Definition nros_generated.h:660
@ NROS_CLIENT_STATE_UNINITIALIZED
Definition nros_generated.h:656
@ NROS_CLIENT_STATE_REGISTERED
Definition nros_generated.h:664
@ NROS_CLIENT_STATE_POLLING
Definition nros_generated.h:674
@ NROS_CLIENT_STATE_SHUTDOWN
Definition nros_generated.h:668
nros_service_state_t
Definition nros_generated.h:626
@ NROS_SERVICE_STATE_SHUTDOWN
Definition nros_generated.h:639
@ NROS_SERVICE_STATE_INITIALIZED
Definition nros_generated.h:635
@ NROS_SERVICE_STATE_POLLING
Definition nros_generated.h:646
@ NROS_SERVICE_STATE_UNINITIALIZED
Definition nros_generated.h:630
nros_ret_t nros_action_get_result(struct nros_action_client_t *client, struct nros_executor_t *executor, const struct nros_goal_uuid_t *goal_uuid, enum nros_goal_status_t *status, uint8_t *result, size_t result_capacity, size_t *result_len)
struct nros_guard_condition_t nros_guard_condition_get_zero_initialized(void)
bool(* nros_executor_trigger_t)(const bool *ready, size_t count, void *context)
Definition nros_generated.h:959
int nros_ret_t
Definition nros_generated.h:785
nros_ret_t nros_action_get_goal_status(const struct nros_action_server_t *server, const struct nros_goal_handle_t *goal, enum nros_goal_status_t *status)
nros_cancel_return_code_t
Definition nros_generated.h:536
@ NROS_CANCEL_RC_UNKNOWN_GOAL
Definition nros_generated.h:539
@ NROS_CANCEL_RC_OK
Definition nros_generated.h:537
@ NROS_CANCEL_RC_GOAL_TERMINATED
Definition nros_generated.h:540
@ NROS_CANCEL_RC_REJECTED
Definition nros_generated.h:538
int32_t nros_cdr_write_string_n(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, const char *data, size_t data_len)
int32_t nros_cdr_write_u8(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, uint8_t value)
nros_ret_t nros_action_server_send_cancel_reply_raw(struct nros_action_server_t *server, int64_t sequence_number, enum nros_cancel_return_code_t return_code, const uint8_t(*accepted)[16], size_t accepted_count)
nros_goal_response_t
Definition nros_generated.h:436
@ NROS_GOAL_REJECT
Definition nros_generated.h:440
@ NROS_GOAL_ACCEPT_AND_EXECUTE
Definition nros_generated.h:444
@ NROS_GOAL_ACCEPT_AND_DEFER
Definition nros_generated.h:448
struct nros_service_t nros_service_get_zero_initialized(void)
const void * nros_node_get_logger(const struct nros_node_t *node)
struct nros_executor_t nros_executor_get_zero_initialized(void)
const char * nros_goal_status_to_string(enum nros_goal_status_t status)
int32_t nros_cdr_write_i64(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, int64_t value)
nros_ret_t nros_subscription_init_polling(struct nros_subscription_t *subscription, const struct nros_node_t *node, const struct nros_message_type_t *type_info, const char *topic_name)
nros_ret_t nros_publisher_assert_liveliness(const struct nros_publisher_t *publisher)
enum nros_parameter_type_t nros_param_get_type(const struct nros_param_server_t *server, const char *name)
nros_ret_t nros_action_client_init(struct nros_action_client_t *client, const struct nros_node_t *node, const char *action_name, const struct nros_action_type_t *type_info)
struct nros_time_t nros_time_sub(struct nros_time_t time, struct nros_duration_t duration)
nros_ret_t nros_action_succeed(struct nros_action_server_t *server, const struct nros_goal_handle_t *goal, const uint8_t *result, size_t result_len)
int32_t nros_cdr_read_u8(const uint8_t **ptr, const uint8_t *end, const uint8_t *origin, uint8_t *value)
struct nros_action_server_t nros_action_server_get_zero_initialized(void)
uint8_t nros_executor_lifecycle_get_state(struct nros_executor_t *executor)
nros_ret_t nros_publisher_init_with_options(struct nros_publisher_t *publisher, const struct nros_node_t *node, const struct nros_message_type_t *type_info, const char *topic_name, const struct nros_qos_t *qos, const struct nros_publisher_options_t *options)
nros_ret_t nros_publisher_set_offered_deadline_missed_callback(struct nros_publisher_t *_pub_, uint32_t _deadline_ms, nros_event_publisher_count_cb_t _cb, void *_user_context)
int32_t nros_cdr_write_string(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, const char *value)
struct nros_action_client_t nros_action_client_get_zero_initialized(void)
nros_ret_t nros_action_client_send_get_result_request_raw(struct nros_action_client_t *client, const uint8_t(*goal_id)[16])
nros_timer_state_t
Definition nros_generated.h:604
@ NROS_TIMER_STATE_SHUTDOWN
Definition nros_generated.h:620
@ NROS_TIMER_STATE_UNINITIALIZED
Definition nros_generated.h:608
@ NROS_TIMER_STATE_CANCELED
Definition nros_generated.h:616
@ NROS_TIMER_STATE_RUNNING
Definition nros_generated.h:612
const char * nros_client_get_service_name(const struct nros_client_t *client)
nros_deadline_policy_t
Definition nros_generated.h:747
@ NROS_DEADLINE_POLICY_RELEASED
Definition nros_generated.h:748
@ NROS_DEADLINE_POLICY_INHERITED
Definition nros_generated.h:750
@ NROS_DEADLINE_POLICY_ACTIVATED
Definition nros_generated.h:749
nros_ret_t nros_action_client_fini(struct nros_action_client_t *client)
struct nros_wake_state_t nros_wake_state_get_zero_initialized(void)
nros_ret_t nros_action_server_set_cancel_wake_callback(struct nros_action_server_t *server, struct nros_wake_state_t *state, void(*cb)(void *), void *ctx)
int32_t nros_action_client_try_recv_cancel_response_raw(struct nros_action_client_t *client, uint8_t *buf, size_t buf_len)
nros_qos_reliability_t
Definition nros_generated.h:468
@ NROS_QOS_RELIABILITY_BEST_EFFORT
Definition nros_generated.h:472
@ NROS_QOS_RELIABILITY_RELIABLE
Definition nros_generated.h:476
#define NROS_MAX_SERVICE_NAME_LEN
Definition nros_generated.h:88
nros_executor_semantics_t
Definition nros_generated.h:293
@ NROS_SEMANTICS_RCLCPP_EXECUTOR
Definition nros_generated.h:298
@ NROS_SEMANTICS_LOGICAL_EXECUTION_TIME
Definition nros_generated.h:306
nros_parameter_type_t
Definition nros_generated.h:223
@ NROS_PARAMETER_STRING
Definition nros_generated.h:243
@ NROS_PARAMETER_INTEGER
Definition nros_generated.h:235
@ NROS_PARAMETER_DOUBLE_ARRAY
Definition nros_generated.h:259
@ NROS_PARAMETER_INTEGER_ARRAY
Definition nros_generated.h:255
@ NROS_PARAMETER_BOOL_ARRAY
Definition nros_generated.h:251
@ NROS_PARAMETER_BYTE_ARRAY
Definition nros_generated.h:247
@ NROS_PARAMETER_BOOL
Definition nros_generated.h:231
@ NROS_PARAMETER_NOT_SET
Definition nros_generated.h:227
@ NROS_PARAMETER_STRING_ARRAY
Definition nros_generated.h:263
@ NROS_PARAMETER_DOUBLE
Definition nros_generated.h:239
nros_ret_t nros_lifecycle_fini(struct nros_lifecycle_state_machine_t *sm)
const char * nros_subscription_get_topic_name(const struct nros_subscription_t *subscription)
struct nros_node_options_t nros_node_get_default_options(void)
nros_ret_t nros_executor_spin(struct nros_executor_t *executor)
nros_ret_t nros_param_set_string(struct nros_param_server_t *server, const char *name, const char *value)
bool nros_goal_uuid_equal(const struct nros_goal_uuid_t *a, const struct nros_goal_uuid_t *b)
nros_ret_t nros_timer_reset(struct nros_timer_t *timer)
nros_ret_t nros_service_take_request(struct nros_service_t *service, uint8_t *_request_data, size_t _request_capacity, size_t *_request_len, int64_t *_sequence_number)
nros_goal_status_t
Definition nros_generated.h:358
@ NROS_GOAL_STATUS_EXECUTING
Definition nros_generated.h:370
@ NROS_GOAL_STATUS_SUCCEEDED
Definition nros_generated.h:378
@ NROS_GOAL_STATUS_ABORTED
Definition nros_generated.h:386
@ NROS_GOAL_STATUS_UNKNOWN
Definition nros_generated.h:362
@ NROS_GOAL_STATUS_ACCEPTED
Definition nros_generated.h:366
@ NROS_GOAL_STATUS_CANCELED
Definition nros_generated.h:382
@ NROS_GOAL_STATUS_CANCELING
Definition nros_generated.h:374
const char * nros_node_get_namespace(const struct nros_node_t *node)
void(* nros_event_liveliness_changed_cb_t)(struct nros_subscription_t *sub, struct nros_liveliness_changed_status_t status, void *user_context)
Definition nros_generated.h:1719
int32_t nros_cdr_read_u64(const uint8_t **ptr, const uint8_t *end, const uint8_t *origin, uint64_t *value)
nros_ret_t nros_client_try_recv_response(struct nros_client_t *client, uint8_t *response_data, size_t response_capacity, size_t *response_len)
nros_ret_t nros_executor_register_subscription(struct nros_executor_t *executor, struct nros_subscription_t *subscription, enum nros_executor_invocation_t invocation)
struct nros_clock_t nros_clock_get_zero_initialized(void)
nros_ret_t nros_publisher_discard(const struct nros_publisher_t *publisher, void *token)
void nros_platform_sleep_us(size_t us)
nros_ret_t nros_executor_lifecycle_register_on_error(struct nros_executor_t *executor, struct Option_LifecycleCallbackFnCtx cb, void *context)
size_t nros_action_server_get_active_goal_count(const struct nros_action_server_t *server)
nros_ret_t nros_action_send_goal(struct nros_action_client_t *client, struct nros_executor_t *executor, const uint8_t *goal, size_t goal_len, struct nros_goal_uuid_t *goal_uuid)
nros_subscription_state_t
Definition nros_generated.h:546
@ NROS_SUBSCRIPTION_STATE_SHUTDOWN
Definition nros_generated.h:559
@ NROS_SUBSCRIPTION_STATE_POLLING
Definition nros_generated.h:566
@ NROS_SUBSCRIPTION_STATE_INITIALIZED
Definition nros_generated.h:555
@ NROS_SUBSCRIPTION_STATE_UNINITIALIZED
Definition nros_generated.h:550
uint32_t nros_platform_critical_section_acquire(void)
nros_ret_t nros_action_client_set_cancel_response_wake_callback(struct nros_action_client_t *client, struct nros_wake_state_t *state, void(*cb)(void *), void *ctx)
const uint32_t NROS_TRANSPORT_OPS_ABI_VERSION_V1
int32_t nros_cdr_write_i32(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, int32_t value)
bool nros_guard_condition_is_triggered(const struct nros_guard_condition_t *guard)
bool nros_client_service_is_ready(const struct nros_client_t *client)
nros_ret_t nros_action_abort(struct nros_action_server_t *server, const struct nros_goal_handle_t *goal, const uint8_t *result, size_t result_len)
struct nros_param_server_t nros_param_server_get_zero_initialized(void)
#define NROS_MAX_NAME_LEN
Definition nros_generated.h:64
nros_ret_t nros_executor_lifecycle_change_state(struct nros_executor_t *executor, uint8_t transition_id)
const char * nros_node_get_name(const struct nros_node_t *node)
nros_ret_t nros_executor_spin_some(struct nros_executor_t *executor, uint64_t timeout_ns)
int32_t nros_cdr_write_i16(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, int16_t value)
nros_ret_t nros_service_send_response(struct nros_service_t *service, int64_t _sequence_number, const uint8_t *_response_data, size_t _response_len)
nros_ret_t nros_client_set_timeout(struct nros_client_t *client, uint32_t timeout_ms)
nros_ret_t nros_executor_register_subscription_raw_with_info(struct nros_executor_t *executor, const struct nros_node_t *node, const char *topic_name, const char *type_name, const char *type_hash, const struct nros_qos_t *qos, nros_subscription_info_callback_t callback, void *context)
nros_ret_t nros_action_client_poll(struct nros_action_client_t *client)
#define NROS_MAX_PARAM_STRING_LEN
Definition nros_generated.h:122
size_t nros_heap_total_bytes(void)
nros_node_state_t
Definition nros_generated.h:392
@ NROS_NODE_STATE_SHUTDOWN
Definition nros_generated.h:404
@ NROS_NODE_STATE_UNINITIALIZED
Definition nros_generated.h:396
@ NROS_NODE_STATE_INITIALIZED
Definition nros_generated.h:400
int32_t nros_cdr_write_i8(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, int8_t value)
nros_ret_t nros_action_server_init_with_qos(struct nros_action_server_t *server, const struct nros_node_t *node, const char *action_name, const struct nros_action_type_t *type_info, nros_goal_callback_t goal_callback, nros_cancel_callback_t cancel_callback, nros_accepted_callback_t accepted_callback, void *context, const struct nros_qos_t *qos)
nros_ret_t nros_action_get_result_async(struct nros_action_client_t *client, const struct nros_goal_uuid_t *goal_uuid)
bool nros_param_has(const struct nros_param_server_t *server, const char *name)
nros_ret_t nros_clear_custom_transport(void)
int32_t nros_subscription_try_recv_validated(struct nros_subscription_t *subscription, uint8_t *buf, size_t buf_len, struct nros_integrity_status_t *out_status)
nros_ret_t nros_param_server_init(struct nros_param_server_t *server, struct nros_parameter_t *storage, size_t capacity)
nros_ret_t nros_subscription_fini(struct nros_subscription_t *subscription)
nros_ret_t nros_has_custom_transport(void)
nros_ret_t nros_action_client_init_polling(struct nros_action_client_t *client, const struct nros_node_t *node, const struct nros_action_type_t *type_info, const char *action_name)
int nros_time_compare(struct nros_time_t a, struct nros_time_t b)
size_t nros_platform_heap_total_bytes(void)
nros_ret_t nros_action_client_send_cancel_request_raw(struct nros_action_client_t *client, const uint8_t(*goal_id)[16])
nros_ret_t nros_executor_add_client(struct nros_executor_t *executor, struct nros_client_t *client)
int32_t nros_subscription_try_recv_raw(struct nros_subscription_t *subscription, uint8_t *buf, size_t buf_len)
nros_ret_t nros_action_client_send_goal_raw(struct nros_action_client_t *client, const uint8_t *goal_cdr, size_t goal_len, uint8_t(*goal_id_out)[16])
nros_ret_t nros_executor_register_guard_condition(struct nros_executor_t *executor, struct nros_guard_condition_t *guard)
nros_ret_t nros_lifecycle_register_on_error(struct nros_lifecycle_state_machine_t *sm, struct Option_LifecycleCallbackFnCtx cb, void *context)
nros_ret_t nros_executor_set_param_string(struct nros_executor_t *executor, const char *name, const char *value)
nros_ret_t nros_client_init(struct nros_client_t *client, const struct nros_node_t *node, const struct nros_service_type_t *type_info, const char *service_name)
nros_ret_t nros_make_node_a_lifecycle_node(struct nros_lifecycle_state_machine_t *sm, const struct nros_node_t *node)
nros_ret_t nros_executor_get_param_string(struct nros_executor_t *executor, const char *name, char *out_value, size_t max_len)
nros_clock_type_t
Definition nros_generated.h:165
@ NROS_CLOCK_STEADY_TIME
Definition nros_generated.h:181
@ NROS_CLOCK_ROS_TIME
Definition nros_generated.h:173
@ NROS_CLOCK_UNINITIALIZED
Definition nros_generated.h:169
@ NROS_CLOCK_SYSTEM_TIME
Definition nros_generated.h:177
#define NROS_MAX_NAMESPACE_LEN
Definition nros_generated.h:69
#define NROS_MAX_ACTION_NAME_LEN
Definition nros_generated.h:93
nros_ret_t nros_clock_init(struct nros_clock_t *clock, enum nros_clock_type_t clock_type)
nros_ret_t nros_action_cancel_goal(struct nros_action_client_t *client, const struct nros_goal_uuid_t *goal_uuid)
nros_ret_t nros_lifecycle_register_on_deactivate(struct nros_lifecycle_state_machine_t *sm, struct Option_LifecycleCallbackFnCtx cb, void *context)
bool nros_support_is_valid(const struct nros_support_t *support)
nros_ret_t nros_client_set_wake_callback(struct nros_client_t *client, struct nros_wake_state_t *state, void(*cb)(void *), void *ctx)
nros_ret_t nros_subscription_set_message_lost_callback(struct nros_subscription_t *_sub, nros_event_subscriber_count_cb_t _cb, void *_user_context)
struct nros_lifecycle_state_machine_t nros_lifecycle_get_zero_initialized(void)
bool nros_executor_trigger_one(const bool *ready, size_t count, void *context)
void(* nros_event_publisher_count_cb_t)(struct nros_publisher_t *pub_, struct nros_count_status_t status, void *user_context)
Definition nros_generated.h:1786
nros_ret_t nros_service_init_polling(struct nros_service_t *service, const struct nros_node_t *node, const struct nros_service_type_t *type_info, const char *service_name)
nros_ret_t nros_publisher_loan(const struct nros_publisher_t *publisher, size_t requested_len, uint8_t **out_buf, size_t *out_cap, void **out_token)
nros_cancel_response_t
Definition nros_generated.h:454
@ NROS_CANCEL_REJECT
Definition nros_generated.h:458
@ NROS_CANCEL_ACCEPT
Definition nros_generated.h:462
nros_ret_t nros_publisher_init_with_qos(struct nros_publisher_t *publisher, const struct nros_node_t *node, const struct nros_message_type_t *type_info, const char *topic_name, const struct nros_qos_t *qos)
nros_ret_t nros_executor_lifecycle_register_on_shutdown(struct nros_executor_t *executor, struct Option_LifecycleCallbackFnCtx cb, void *context)
nros_ret_t nros_param_server_fini(struct nros_param_server_t *server)
nros_ret_t nros_clock_get_now_ns(const struct nros_clock_t *clock, int64_t *nanoseconds)
bool nros_executor_is_valid(const struct nros_executor_t *executor)
nros_ret_t nros_executor_lifecycle_register_on_cleanup(struct nros_executor_t *executor, struct Option_LifecycleCallbackFnCtx cb, void *context)
int32_t nros_action_client_try_recv_feedback_raw(struct nros_action_client_t *client, uint8_t *buf, size_t buf_len, uint8_t(*goal_id_out)[16])
nros_ret_t nros_subscription_init_with_qos(struct nros_subscription_t *subscription, const struct nros_node_t *node, const struct nros_message_type_t *type_info, const char *topic_name, nros_subscription_callback_t callback, void *context, const struct nros_qos_t *qos)
nros_ret_t nros_executor_set_semantics(struct nros_executor_t *executor, enum nros_executor_semantics_t semantics)
nros_ret_t nros_action_client_wait_for_action_server(struct nros_action_client_t *client, struct nros_executor_t *executor, uint32_t timeout_ms)
nros_ret_t nros_executor_lifecycle_register_on_activate(struct nros_executor_t *executor, struct Option_LifecycleCallbackFnCtx cb, void *context)
nros_ret_t nros_timer_fini(struct nros_timer_t *timer)
nros_ret_t nros_client_call(struct nros_client_t *client, const uint8_t *request_data, size_t request_len, uint8_t *response_data, size_t response_capacity, size_t *response_len)
nros_sched_context_id_t nros_executor_default_sched_context_id(void)
bool(* nros_param_callback_t)(const char *name, const struct nros_parameter_t *param, void *context)
Definition nros_generated.h:879
nros_ret_t nros_goal_uuid_generate(struct nros_goal_uuid_t *uuid)
nros_ret_t nros_service_set_wake_callback(struct nros_service_t *service, struct nros_wake_state_t *state, void(*cb)(void *), void *ctx)
nros_ret_t nros_client_send_request_raw(struct nros_client_t *client, const uint8_t *data, size_t len)
nros_ret_t nros_service_fini(struct nros_service_t *service)
nros_ret_t nros_service_init_with_options(struct nros_service_t *service, const struct nros_node_t *node, const struct nros_service_type_t *type_info, const char *service_name, nros_service_callback_t callback, void *context, const struct nros_qos_t *qos, const struct nros_service_options_t *options)
int32_t nros_cdr_read_bool(const uint8_t **ptr, const uint8_t *end, const uint8_t *origin, bool *value)
nros_ret_t nros_action_client_set_goal_response_wake_callback(struct nros_action_client_t *client, struct nros_wake_state_t *state, void(*cb)(void *), void *ctx)
struct nros_client_t nros_client_get_zero_initialized(void)
int32_t nros_cdr_read_u32(const uint8_t **ptr, const uint8_t *end, const uint8_t *origin, uint32_t *value)
int32_t nros_cdr_write_u16(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, uint16_t value)
nros_sched_priority_t
Definition nros_generated.h:726
@ NROS_SCHED_PRIORITY_NORMAL
Definition nros_generated.h:728
@ NROS_SCHED_PRIORITY_CRITICAL
Definition nros_generated.h:727
@ NROS_SCHED_PRIORITY_BEST_EFFORT
Definition nros_generated.h:729
nros_ret_t nros_executor_node_init(struct nros_executor_t *executor, struct nros_node_t *node, const char *name, const struct nros_node_options_t *options)
enum nros_clock_type_t nros_clock_get_type(const struct nros_clock_t *clock)
nros_ret_t nros_node_init_ex(struct nros_node_t *node, const struct nros_support_t *support, const char *name, const struct nros_node_options_t *options)
struct nros_time_t nros_time_from_nanoseconds(int64_t nanoseconds)
nros_ret_t nros_client_send_request_async(struct nros_client_t *client, const uint8_t *request_data, size_t request_len)
nros_ret_t nros_action_publish_feedback(struct nros_action_server_t *server, const struct nros_goal_handle_t *goal, const uint8_t *feedback, size_t feedback_len)
nros_ret_t nros_executor_lifecycle_register_on_configure(struct nros_executor_t *executor, struct Option_LifecycleCallbackFnCtx cb, void *context)
void(* nros_result_callback_t)(const struct nros_goal_uuid_t *goal_uuid, enum nros_goal_status_t status, const uint8_t *result, size_t result_len, void *context)
Definition nros_generated.h:1097
struct nros_action_server_options_t nros_action_server_get_default_options(void)
size_t nros_heap_peak_bytes(void)
void(* nros_timer_callback_t)(struct nros_timer_t *timer, void *context)
Definition nros_generated.h:1870
nros_executor_invocation_t
Definition nros_generated.h:590
@ NROS_EXECUTOR_ALWAYS
Definition nros_generated.h:598
@ NROS_EXECUTOR_ON_NEW_DATA
Definition nros_generated.h:594
#define NROS_MAX_TYPE_HASH_LEN
Definition nros_generated.h:103
nros_ret_t nros_executor_bind_handle_to_sched_context(struct nros_executor_t *executor, size_t handle, nros_sched_context_id_t sc_id)
void(* nros_response_callback_t)(const uint8_t *response, size_t response_len, void *context)
Definition nros_generated.h:2033
void * nros_platform_alloc(size_t size)
nros_support_state_t
Definition nros_generated.h:312
@ NROS_SUPPORT_STATE_INITIALIZED
Definition nros_generated.h:320
@ NROS_SUPPORT_STATE_SHUTDOWN
Definition nros_generated.h:324
@ NROS_SUPPORT_STATE_UNINITIALIZED
Definition nros_generated.h:316
bool nros_guard_condition_is_valid(const struct nros_guard_condition_t *guard)
nros_ret_t nros_timer_init(struct nros_timer_t *timer, const struct nros_support_t *support, uint64_t period_ns, nros_timer_callback_t callback, void *context)
nros_ret_t nros_action_server_reject_goal_raw(struct nros_action_server_t *server, int64_t sequence_number)
nros_ret_t nros_lifecycle_init(struct nros_lifecycle_state_machine_t *sm, const struct nros_node_t *node)
int nros_executor_get_remaining_handles(const struct nros_executor_t *executor)
nros_ret_t nros_param_get_string(const struct nros_param_server_t *server, const char *name, char *value, size_t max_len)
nros_ret_t nros_executor_spin_period(struct nros_executor_t *executor, uint64_t period_ns)
nros_qos_durability_t
Definition nros_generated.h:482
@ NROS_QOS_DURABILITY_VOLATILE
Definition nros_generated.h:486
@ NROS_QOS_DURABILITY_TRANSIENT_LOCAL
Definition nros_generated.h:490
enum nros_cancel_response_t(* nros_cancel_callback_t)(struct nros_action_server_t *server, const struct nros_goal_handle_t *goal, void *context)
Definition nros_generated.h:1414
int32_t nros_cdr_write_f64(uint8_t **ptr, const uint8_t *end, const uint8_t *origin, double value)
nros_ret_t nros_lifecycle_register_on_activate(struct nros_lifecycle_state_machine_t *sm, struct Option_LifecycleCallbackFnCtx cb, void *context)
nros_ret_t nros_action_server_fini(struct nros_action_server_t *server)
nros_ret_t nros_action_server_init_with_options(struct nros_action_server_t *server, const struct nros_node_t *node, const char *action_name, const struct nros_action_type_t *type_info, nros_goal_callback_t goal_callback, nros_cancel_callback_t cancel_callback, nros_accepted_callback_t accepted_callback, void *context, const struct nros_qos_t *qos, const struct nros_action_server_options_t *options)
size_t nros_heap_used_bytes(void)
void(* nros_event_subscriber_count_cb_t)(struct nros_subscription_t *sub, struct nros_count_status_t status, void *user_context)
Definition nros_generated.h:1735
Definition nros_generated.h:1235
int32_t arena_entry_index
Definition nros_generated.h:1240
void * executor_ptr
Definition nros_generated.h:1244
Definition nros_generated.h:1489
void * c_context
Definition nros_generated.h:1518
struct nros_action_server_t * server_ptr
Definition nros_generated.h:1522
nros_cancel_callback_t c_cancel_callback
Definition nros_generated.h:1510
nros_accepted_callback_t c_accepted_callback
Definition nros_generated.h:1514
enum nros_goal_response_t(* c_goal_callback)(struct nros_action_server_t *, const struct nros_goal_handle_t *, const uint8_t *, size_t, void *)
Definition nros_generated.h:1502
ActionServerRawHandle handle
Definition nros_generated.h:1494
void * executor_ptr
Definition nros_generated.h:1498
Definition nros_generated.h:2042
void * executor_ptr
Definition nros_generated.h:2050
int32_t arena_entry_index
Definition nros_generated.h:2046
uint32_t timeout_ms
Definition nros_generated.h:2054
Definition nros_generated.h:1942
int32_t arena_entry_index
Definition nros_generated.h:1946
void * executor_ptr
Definition nros_generated.h:1950
Definition nros_generated.h:1350
nros_sched_context_id_t sched_context
Definition nros_generated.h:1358
uint8_t _reserved[3]
Definition nros_generated.h:1362
Definition nros_generated.h:1250
void * context
Definition nros_generated.h:1294
struct ActionClientInternal _internal
Definition nros_generated.h:1311
size_t type_name_len
Definition nros_generated.h:1270
uint8_t action_name[256]
Definition nros_generated.h:1258
size_t type_hash_len
Definition nros_generated.h:1278
const struct nros_node_t * node
Definition nros_generated.h:1298
nros_sched_context_id_t sched_context_id
Definition nros_generated.h:1306
size_t action_name_len
Definition nros_generated.h:1262
uint8_t type_name[256]
Definition nros_generated.h:1266
uint64_t _opaque[ACTION_CLIENT_OPAQUE_U64S]
Definition nros_generated.h:1317
nros_feedback_callback_t feedback_callback
Definition nros_generated.h:1286
nros_result_callback_t result_callback
Definition nros_generated.h:1290
enum nros_action_client_state_t state
Definition nros_generated.h:1254
uint8_t type_hash[128]
Definition nros_generated.h:1274
nros_goal_response_callback_t goal_response_callback
Definition nros_generated.h:1282
Definition nros_generated.h:1611
uint8_t _reserved[3]
Definition nros_generated.h:1623
nros_sched_context_id_t sched_context
Definition nros_generated.h:1619
Definition nros_generated.h:1528
struct nros_qos_t qos
Definition nros_generated.h:1584
size_t action_name_len
Definition nros_generated.h:1540
size_t type_hash_len
Definition nros_generated.h:1556
struct ActionServerInternal _internal
Definition nros_generated.h:1598
uint8_t action_name[256]
Definition nros_generated.h:1536
nros_cancel_callback_t cancel_callback
Definition nros_generated.h:1564
void * context
Definition nros_generated.h:1572
size_t type_name_len
Definition nros_generated.h:1548
uint8_t type_name[256]
Definition nros_generated.h:1544
enum nros_action_server_state_t state
Definition nros_generated.h:1532
nros_accepted_callback_t accepted_callback
Definition nros_generated.h:1568
nros_sched_context_id_t sched_context_id
Definition nros_generated.h:1593
const struct nros_node_t * node
Definition nros_generated.h:1576
uint64_t _opaque[ACTION_SERVER_OPAQUE_U64S]
Definition nros_generated.h:1604
uint8_t type_hash[128]
Definition nros_generated.h:1552
nros_goal_callback_t goal_callback
Definition nros_generated.h:1560
Definition nros_generated.h:1323
const char * type_hash
Definition nros_generated.h:1331
size_t result_serialized_size_max
Definition nros_generated.h:1339
size_t goal_serialized_size_max
Definition nros_generated.h:1335
const char * type_name
Definition nros_generated.h:1327
size_t feedback_serialized_size_max
Definition nros_generated.h:1343
Definition nros_generated.h:2331
nros_sched_context_id_t sched_context
Definition nros_generated.h:2338
uint8_t _reserved[3]
Definition nros_generated.h:2342
Definition nros_generated.h:2060
size_t type_name_len
Definition nros_generated.h:2080
const struct nros_node_t * node
Definition nros_generated.h:2101
uint8_t type_hash[128]
Definition nros_generated.h:2084
void * context
Definition nros_generated.h:2097
enum nros_client_state_t state
Definition nros_generated.h:2064
struct ServiceClientInternal _internal
Definition nros_generated.h:2120
uint64_t _opaque[SERVICE_CLIENT_OPAQUE_U64S]
Definition nros_generated.h:2127
struct nros_qos_t qos
Definition nros_generated.h:2107
uint8_t type_name[256]
Definition nros_generated.h:2076
size_t type_hash_len
Definition nros_generated.h:2088
uint8_t service_name[256]
Definition nros_generated.h:2068
nros_sched_context_id_t sched_context_id
Definition nros_generated.h:2115
nros_response_callback_t response_callback
Definition nros_generated.h:2093
size_t service_name_len
Definition nros_generated.h:2072
Definition nros_generated.h:765
enum nros_clock_state_t state
Definition nros_generated.h:773
enum nros_clock_type_t type
Definition nros_generated.h:769
uint64_t _steady_epoch_ns
Definition nros_generated.h:777
Definition nros_generated.h:1726
uint32_t total_count
Definition nros_generated.h:1727
uint32_t total_count_change
Definition nros_generated.h:1728
Definition nros_generated.h:804
uint32_t nanosec
Definition nros_generated.h:812
int32_t sec
Definition nros_generated.h:808
Definition nros_generated.h:972
const struct nros_support_t * support
Definition nros_generated.h:988
nros_executor_trigger_t trigger
Definition nros_generated.h:992
void * trigger_context
Definition nros_generated.h:996
uint64_t _opaque[EXECUTOR_OPAQUE_U64S]
Definition nros_generated.h:1031
size_t max_handles
Definition nros_generated.h:1004
bool in_dispatch
Definition nros_generated.h:1026
size_t timer_count
Definition nros_generated.h:1012
enum nros_executor_state_t state
Definition nros_generated.h:976
size_t handle_count
Definition nros_generated.h:1000
uint64_t timeout_ns
Definition nros_generated.h:980
size_t subscription_count
Definition nros_generated.h:1008
uint64_t invocation_time_ns
Definition nros_generated.h:1020
enum nros_executor_semantics_t semantics
Definition nros_generated.h:984
size_t service_count
Definition nros_generated.h:1016
Definition nros_generated.h:1389
struct nros_goal_uuid_t uuid
Definition nros_generated.h:1393
Definition nros_generated.h:1071
uint8_t uuid[16]
Definition nros_generated.h:1075
Definition nros_generated.h:2138
bool _guard_valid
Definition nros_generated.h:2166
void * context
Definition nros_generated.h:2154
nros_guard_condition_callback_t callback
Definition nros_generated.h:2150
size_t handle_id
Definition nros_generated.h:2162
uint64_t _guard_opaque[GUARD_HANDLE_OPAQUE_U64S]
Definition nros_generated.h:2171
const struct nros_support_t * _support
Definition nros_generated.h:2158
enum nros_guard_condition_state_t state
Definition nros_generated.h:2142
bool triggered
Definition nros_generated.h:2146
Definition nros_generated.h:2386
int8_t crc_valid
Definition nros_generated.h:2399
int64_t gap
Definition nros_generated.h:2390
bool duplicate
Definition nros_generated.h:2394
Definition nros_generated.h:2224
uint64_t storage[NROS_LIFECYCLE_CTX_OPAQUE_U64S]
Definition nros_generated.h:2236
bool initialized
Definition nros_generated.h:2228
uint8_t _pad[7]
Definition nros_generated.h:2232
Definition nros_generated.h:1709
int16_t not_alive_count_change
Definition nros_generated.h:1713
int16_t alive_count_change
Definition nros_generated.h:1712
uint16_t not_alive_count
Definition nros_generated.h:1711
uint16_t alive_count
Definition nros_generated.h:1710
Definition nros_generated.h:2269
const char * type_hash
Definition nros_generated.h:2277
const char * type_name
Definition nros_generated.h:2273
size_t serialized_size_max
Definition nros_generated.h:2281
Definition nros_generated.h:1803
size_t namespace_len
Definition nros_generated.h:1811
size_t locator_len
Definition nros_generated.h:1829
uint8_t locator[128]
Definition nros_generated.h:1825
uint8_t _reserved[3]
Definition nros_generated.h:1841
size_t rmw_name_len
Definition nros_generated.h:1820
uint32_t domain_id_override
Definition nros_generated.h:1833
uint8_t sched_context_id
Definition nros_generated.h:1837
uint8_t rmw_name[32]
Definition nros_generated.h:1816
uint8_t namespace_[128]
Definition nros_generated.h:1807
Definition nros_generated.h:1143
uint8_t sched_context_id
Definition nros_generated.h:1186
uint8_t node_id
Definition nros_generated.h:1197
const struct nros_executor_t * executor
Definition nros_generated.h:1208
size_t rmw_name_len
Definition nros_generated.h:1176
uint8_t rmw_name[32]
Definition nros_generated.h:1172
uint32_t domain_id_override
Definition nros_generated.h:1181
const struct nros_qos_override_t * qos_overrides
Definition nros_generated.h:1214
uint8_t _reserved[3]
Definition nros_generated.h:1190
size_t name_len
Definition nros_generated.h:1155
enum nros_node_state_t state
Definition nros_generated.h:1147
size_t namespace_len
Definition nros_generated.h:1163
uint8_t name[64]
Definition nros_generated.h:1151
uint8_t namespace_[128]
Definition nros_generated.h:1159
const struct nros_support_t * support
Definition nros_generated.h:1167
size_t qos_overrides_len
Definition nros_generated.h:1218
Definition nros_generated.h:821
size_t len
Definition nros_generated.h:829
const void * data
Definition nros_generated.h:825
Definition nros_generated.h:886
enum nros_param_server_state_t state
Definition nros_generated.h:890
size_t count
Definition nros_generated.h:898
struct nros_parameter_t * parameters
Definition nros_generated.h:902
void * callback_context
Definition nros_generated.h:910
nros_param_callback_t callback
Definition nros_generated.h:906
size_t capacity
Definition nros_generated.h:894
Definition nros_generated.h:861
enum nros_parameter_type_t type
Definition nros_generated.h:869
uint8_t name[64]
Definition nros_generated.h:865
union nros_parameter_value_t value
Definition nros_generated.h:873
Definition nros_generated.h:2254
uint8_t _reserved[4]
Definition nros_generated.h:2260
Definition nros_generated.h:1742
uint8_t type_name[256]
Definition nros_generated.h:1758
uint8_t topic_name[256]
Definition nros_generated.h:1750
enum nros_publisher_state_t state
Definition nros_generated.h:1746
size_t topic_name_len
Definition nros_generated.h:1754
size_t type_hash_len
Definition nros_generated.h:1770
uint64_t _opaque[PUBLISHER_OPAQUE_U64S]
Definition nros_generated.h:1779
size_t type_name_len
Definition nros_generated.h:1762
uint8_t type_hash[128]
Definition nros_generated.h:1766
const struct nros_node_t * node
Definition nros_generated.h:1774
Definition nros_generated.h:1116
uint8_t policy
Definition nros_generated.h:1129
const char * topic
Definition nros_generated.h:1121
uint8_t role
Definition nros_generated.h:1125
uint32_t value
Definition nros_generated.h:1135
Definition nros_generated.h:1439
enum nros_qos_reliability_t reliability
Definition nros_generated.h:1443
uint32_t liveliness_lease_ms
Definition nros_generated.h:1472
uint8_t avoid_ros_namespace_conventions
Definition nros_generated.h:1476
enum nros_qos_liveliness_t liveliness_kind
Definition nros_generated.h:1455
int depth
Definition nros_generated.h:1459
enum nros_qos_history_t history
Definition nros_generated.h:1451
enum nros_qos_durability_t durability
Definition nros_generated.h:1447
uint32_t deadline_ms
Definition nros_generated.h:1464
uint32_t lifespan_ms
Definition nros_generated.h:1468
Definition nros_generated.h:2181
uint8_t os_pri
Definition nros_generated.h:2202
nros_sched_class_t class_
Definition nros_generated.h:2182
uint32_t tt_window_offset_us
Definition nros_generated.h:2208
uint32_t period_us
Definition nros_generated.h:2188
nros_deadline_policy_t deadline_policy
Definition nros_generated.h:2184
uint32_t budget_us
Definition nros_generated.h:2192
nros_sched_priority_t priority
Definition nros_generated.h:2183
uint32_t tt_window_duration_us
Definition nros_generated.h:2213
uint32_t deadline_us
Definition nros_generated.h:2196
Definition nros_generated.h:2310
uint8_t _reserved[3]
Definition nros_generated.h:2323
nros_sched_context_id_t sched_context
Definition nros_generated.h:2319
Definition nros_generated.h:1956
uint8_t type_hash[128]
Definition nros_generated.h:1980
uint8_t type_name[256]
Definition nros_generated.h:1972
const struct nros_node_t * node
Definition nros_generated.h:1996
size_t service_name_len
Definition nros_generated.h:1968
nros_service_callback_t callback
Definition nros_generated.h:1988
size_t type_hash_len
Definition nros_generated.h:1984
enum nros_service_state_t state
Definition nros_generated.h:1960
struct ServiceServerInternal _internal
Definition nros_generated.h:2015
uint8_t service_name[256]
Definition nros_generated.h:1964
struct nros_qos_t qos
Definition nros_generated.h:2002
nros_sched_context_id_t sched_context_id
Definition nros_generated.h:2010
size_t type_name_len
Definition nros_generated.h:1976
uint64_t _opaque[SERVICE_SERVER_OPAQUE_U64S]
Definition nros_generated.h:2022
void * context
Definition nros_generated.h:1992
Definition nros_generated.h:2290
const char * type_hash
Definition nros_generated.h:2298
const char * type_name
Definition nros_generated.h:2294
Definition nros_generated.h:2355
nros_sched_context_id_t sched_context
Definition nros_generated.h:2365
uint8_t _reserved[2]
Definition nros_generated.h:2378
uint8_t message_info
Definition nros_generated.h:2373
Definition nros_generated.h:1639
const struct nros_node_t * node
Definition nros_generated.h:1679
nros_sched_context_id_t sched_context_id
Definition nros_generated.h:1697
enum nros_subscription_state_t state
Definition nros_generated.h:1643
size_t type_hash_len
Definition nros_generated.h:1667
size_t handle_id
Definition nros_generated.h:1687
struct nros_qos_t qos
Definition nros_generated.h:1683
uint8_t topic_name[256]
Definition nros_generated.h:1647
uint64_t _opaque[SUBSCRIPTION_OPAQUE_U64S]
Definition nros_generated.h:1703
void * context
Definition nros_generated.h:1675
nros_subscription_callback_t callback
Definition nros_generated.h:1671
size_t type_name_len
Definition nros_generated.h:1659
size_t topic_name_len
Definition nros_generated.h:1651
uint8_t type_name[256]
Definition nros_generated.h:1655
uint8_t type_hash[128]
Definition nros_generated.h:1663
Definition nros_generated.h:919
uint8_t locator[128]
Definition nros_generated.h:931
uint8_t domain_id
Definition nros_generated.h:927
uint64_t _opaque[SESSION_OPAQUE_U64S]
Definition nros_generated.h:940
size_t locator_len
Definition nros_generated.h:935
enum nros_support_state_t state
Definition nros_generated.h:923
Definition nros_generated.h:790
int32_t sec
Definition nros_generated.h:794
uint32_t nanosec
Definition nros_generated.h:798
Definition nros_generated.h:1875
void * context
Definition nros_generated.h:1895
uint64_t last_call_time_ns
Definition nros_generated.h:1887
const struct nros_support_t * support
Definition nros_generated.h:1899
size_t handle_id
Definition nros_generated.h:1903
enum nros_timer_state_t state
Definition nros_generated.h:1879
uint64_t period_ns
Definition nros_generated.h:1883
nros_timer_callback_t callback
Definition nros_generated.h:1891
void * _executor
Definition nros_generated.h:1907
Definition nros_generated.h:1058
uint32_t _reserved
Definition nros_generated.h:1060
nros_ret_t(* write)(void *user_data, const uint8_t *buf, size_t len)
Definition nros_generated.h:1064
void(* close)(void *user_data)
Definition nros_generated.h:1063
nros_ret_t(* open)(void *user_data, const void *params)
Definition nros_generated.h:1062
uint32_t abi_version
Definition nros_generated.h:1059
void * user_data
Definition nros_generated.h:1061
int32_t(* read)(void *user_data, uint8_t *buf, size_t len, uint32_t timeout_ms)
Definition nros_generated.h:1065
Definition nros_generated.h:1373
uint64_t _opaque[2]
Definition nros_generated.h:1374
Definition nros_generated.h:835
double double_value
Definition nros_generated.h:847
uint8_t string_value[128]
Definition nros_generated.h:851
struct nros_param_array_t array_value
Definition nros_generated.h:855
bool bool_value
Definition nros_generated.h:839
int64_t integer_value
Definition nros_generated.h:843
#define NROS_PUBLIC
Definition visibility.h:33