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
169#define NROS_DOMAIN_ID_EXPLICIT_ZERO 255
709#if defined(__cplusplus) || __STDC_VERSION__ >= 202311L
720#if __STDC_VERSION__ >= 202311L
732#if defined(__cplusplus) || __STDC_VERSION__ >= 202311L
741#if __STDC_VERSION__ >= 202311L
753#if defined(__cplusplus) || __STDC_VERSION__ >= 202311L
762#if __STDC_VERSION__ >= 202311L
1074 int32_t (*
read)(
void *
user_data, uint8_t *buf,
size_t len, uint32_t timeout_ms);
1099 const uint8_t *feedback,
1100 size_t feedback_len,
1108 const uint8_t *result,
1413 const uint8_t *goal_request,
1737 void *user_context);
1753 void *user_context);
1804 void *user_context);
1875 const uint8_t *attachment,
1876 size_t attachment_len,
1943 uint8_t *response_data,
1944 size_t response_capacity,
1945 size_t *response_len,
2421#define NROS_RET_OK 0
2426#define NROS_RET_ERROR -1
2431#define NROS_RET_TIMEOUT -2
2436#define NROS_RET_INVALID_ARGUMENT -3
2441#define NROS_RET_NOT_FOUND -4
2446#define NROS_RET_ALREADY_EXISTS -5
2451#define NROS_RET_FULL -6
2456#define NROS_RET_NOT_INIT -7
2461#define NROS_RET_BAD_SEQUENCE -8
2466#define NROS_RET_SERVICE_FAILED -9
2471#define NROS_RET_PUBLISH_FAILED -10
2476#define NROS_RET_SUBSCRIPTION_FAILED -11
2481#define NROS_RET_NOT_ALLOWED -12
2486#define NROS_RET_REJECTED -13
2492#define NROS_RET_TRY_AGAIN -14
2500#define NROS_RET_REENTRANT -15
2507#define NROS_RET_UNSUPPORTED -16
2585 const uint8_t *origin,
2595 const uint8_t *origin,
2604 const uint8_t *origin,
2614 const uint8_t *origin,
2623 const uint8_t *origin,
2633 const uint8_t *origin,
2642 const uint8_t *origin,
2652 const uint8_t *origin,
2661 const uint8_t *origin,
2671 const uint8_t *origin,
2681 const uint8_t *origin,
2690 const uint8_t *origin,
2699 const uint8_t *origin,
2713 const uint8_t *origin,
2723 const uint8_t *origin,
2732 const uint8_t *origin,
2741 const uint8_t *origin,
2750 const uint8_t *origin,
2759 const uint8_t *origin,
2768 const uint8_t *origin,
2777 const uint8_t *origin,
2786 const uint8_t *origin,
2795 const uint8_t *origin,
2804 const uint8_t *origin,
2814 const uint8_t *origin,
2842 int64_t *nanoseconds);
2915 const char *default_value);
3075 const char *action_name,
3117 uint32_t timeout_ms);
3142 const uint8_t *goal,
3165 size_t result_capacity,
3166 size_t *result_len);
3193 const uint8_t *goal,
3267 const char *action_name);
3276 const uint8_t *goal_cdr,
3278 uint8_t (*goal_id_out)[16]);
3296 const uint8_t (*goal_id)[16]);
3313 const uint8_t (*goal_id)[16]);
3371 uint8_t (*goal_id_out)[16]);
3455 const char *action_name,
3474 const uint8_t *feedback,
3475 size_t feedback_len);
3486 const uint8_t *result,
3497 const uint8_t *result,
3508 const uint8_t *result,
3578 const char *action_name);
3596 uint8_t (*goal_id_out)[16],
3597 int64_t *sequence_number_out);
3605 const uint8_t (*goal_id)[16],
3606 int64_t sequence_number);
3614 int64_t sequence_number);
3624 const uint8_t (*goal_id)[16],
3625 const uint8_t *feedback_cdr,
3626 size_t feedback_len);
3637 const uint8_t (*goal_id)[16],
3639 const uint8_t *result_cdr,
3657 uint8_t (*goal_id_out)[16],
3658 int64_t *sequence_number_out,
3672 int64_t sequence_number,
3674 const uint8_t (*accepted)[16],
3675 size_t accepted_count);
3689 const uint8_t *default_result_cdr,
3690 size_t default_result_len);
3747 void *_user_context);
3762 uint32_t _deadline_ms,
3764 void *_user_context);
3776 void *_user_context);
3789 void *_user_context);
3802 uint32_t _deadline_ms,
3804 void *_user_context);
4009 const char *topic_name,
4010 const char *type_name,
4011 const char *type_hash,
4044 const char *callback_group);
4060 const char *callback_group);
4165 uint64_t period_ns);
4175 uint64_t period_ns);
4224 uint32_t major_frame_us);
4334 uint8_t transition_id);
4430 uint8_t transition_id);
4787 const uint8_t *data,
4823 void (*size_cb)(
size_t *out_total_len,
void *user_ctx),
4824 void (*chunk_cb)(uint8_t *out_buf,
4826 size_t *out_written,
4882 size_t requested_len,
5024 const char *service_name,
5071 const char *service_name);
5126 int64_t *sequence_number);
5141 int64_t sequence_number,
5142 const uint8_t *data,
5156 uint8_t *_request_data,
5157 size_t _request_capacity,
5158 size_t *_request_len,
5159 int64_t *_sequence_number);
5173 int64_t _sequence_number,
5174 const uint8_t *_response_data,
5175 size_t _response_len);
5264 const char *service_name,
5313 const char *service_name);
5326 const uint8_t *data,
5405 uint32_t timeout_ms);
5432 const uint8_t *request_data,
5433 size_t request_len);
5446 uint8_t *response_data,
5447 size_t response_capacity,
5448 size_t *response_len);
5476 const uint8_t *request_data,
5478 uint8_t *response_data,
5479 size_t response_capacity,
5480 size_t *response_len);
5548 const char *topic_name,
5562 const char *topic_name,
5605 const char *topic_name,
5641 const char *topic_name);
5656 const char *topic_name,
5754 const uint8_t **out_buf,
5884 const char *session_name);
6026 uint64_t current_time_ns);
nros_ret_t nros_executor_register_subscription_in_group(struct nros_executor_t *executor, struct nros_subscription_t *subscription, enum nros_executor_invocation_t invocation, const char *callback_group)
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:1941
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:2149
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:1873
void(* nros_accepted_callback_t)(struct nros_action_server_t *server, const struct nros_goal_handle_t *goal, void *context)
Definition nros_generated.h:1433
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:769
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:196
@ NROS_CLOCK_STATE_SHUTDOWN
Definition nros_generated.h:208
@ NROS_CLOCK_STATE_UNINITIALIZED
Definition nros_generated.h:200
@ NROS_CLOCK_STATE_READY
Definition nros_generated.h:204
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:1411
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:712
@ NROS_SCHED_CLASS_SPORADIC
Definition nros_generated.h:715
@ NROS_SCHED_CLASS_FIFO
Definition nros_generated.h:713
@ NROS_SCHED_CLASS_BEST_EFFORT
Definition nros_generated.h:716
@ NROS_SCHED_CLASS_EDF
Definition nros_generated.h:714
@ NROS_SCHED_CLASS_TIME_TRIGGERED
Definition nros_generated.h:717
void(* nros_subscription_callback_t)(const uint8_t *data, size_t len, void *context)
Definition nros_generated.h:1650
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:689
@ NROS_GUARD_CONDITION_STATE_SHUTDOWN
Definition nros_generated.h:701
@ NROS_GUARD_CONDITION_STATE_INITIALIZED
Definition nros_generated.h:697
@ NROS_GUARD_CONDITION_STATE_UNINITIALIZED
Definition nros_generated.h:693
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:419
@ NROS_ACTION_SERVER_STATE_INITIALIZED
Definition nros_generated.h:429
@ NROS_ACTION_SERVER_STATE_SHUTDOWN
Definition nros_generated.h:433
@ NROS_ACTION_SERVER_STATE_POLLING
Definition nros_generated.h:439
@ NROS_ACTION_SERVER_STATE_UNINITIALIZED
Definition nros_generated.h:423
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:1235
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:1098
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:278
@ NROS_EXECUTOR_STATE_SHUTDOWN
Definition nros_generated.h:294
@ NROS_EXECUTOR_STATE_UNINITIALIZED
Definition nros_generated.h:282
@ NROS_EXECUTOR_STATE_SPINNING
Definition nros_generated.h:290
@ NROS_EXECUTOR_STATE_INITIALIZED
Definition nros_generated.h:286
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:519
@ NROS_QOS_LIVELINESS_NONE
Definition nros_generated.h:523
@ NROS_QOS_LIVELINESS_MANUAL_BY_TOPIC
Definition nros_generated.h:531
@ NROS_QOS_LIVELINESS_MANUAL_BY_NODE
Definition nros_generated.h:535
@ NROS_QOS_LIVELINESS_AUTOMATIC
Definition nros_generated.h:527
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:505
@ NROS_QOS_HISTORY_KEEP_LAST
Definition nros_generated.h:509
@ NROS_QOS_HISTORY_KEEP_ALL
Definition nros_generated.h:513
nros_param_server_state_t
Definition nros_generated.h:214
@ NROS_PARAM_SERVER_STATE_SHUTDOWN
Definition nros_generated.h:226
@ NROS_PARAM_SERVER_STATE_READY
Definition nros_generated.h:222
@ NROS_PARAM_SERVER_STATE_UNINITIALIZED
Definition nros_generated.h:218
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:339
@ NROS_ACTION_CLIENT_STATE_UNINITIALIZED
Definition nros_generated.h:343
@ NROS_ACTION_CLIENT_STATE_POLLING
Definition nros_generated.h:359
@ NROS_ACTION_CLIENT_STATE_INITIALIZED
Definition nros_generated.h:349
@ NROS_ACTION_CLIENT_STATE_SHUTDOWN
Definition nros_generated.h:353
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:1091
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:581
@ NROS_PUBLISHER_STATE_INITIALIZED
Definition nros_generated.h:589
@ NROS_PUBLISHER_STATE_SHUTDOWN
Definition nros_generated.h:593
@ NROS_PUBLISHER_STATE_UNINITIALIZED
Definition nros_generated.h:585
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:661
@ NROS_CLIENT_STATE_INITIALIZED
Definition nros_generated.h:669
@ NROS_CLIENT_STATE_UNINITIALIZED
Definition nros_generated.h:665
@ NROS_CLIENT_STATE_REGISTERED
Definition nros_generated.h:673
@ NROS_CLIENT_STATE_POLLING
Definition nros_generated.h:683
@ NROS_CLIENT_STATE_SHUTDOWN
Definition nros_generated.h:677
nros_service_state_t
Definition nros_generated.h:635
@ NROS_SERVICE_STATE_SHUTDOWN
Definition nros_generated.h:648
@ NROS_SERVICE_STATE_INITIALIZED
Definition nros_generated.h:644
@ NROS_SERVICE_STATE_POLLING
Definition nros_generated.h:655
@ NROS_SERVICE_STATE_UNINITIALIZED
Definition nros_generated.h:639
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:968
int nros_ret_t
Definition nros_generated.h:794
nros_ret_t nros_executor_register_timer_in_group(struct nros_executor_t *executor, struct nros_timer_t *timer, const char *callback_group)
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:545
@ NROS_CANCEL_RC_UNKNOWN_GOAL
Definition nros_generated.h:548
@ NROS_CANCEL_RC_OK
Definition nros_generated.h:546
@ NROS_CANCEL_RC_GOAL_TERMINATED
Definition nros_generated.h:549
@ NROS_CANCEL_RC_REJECTED
Definition nros_generated.h:547
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:445
@ NROS_GOAL_REJECT
Definition nros_generated.h:449
@ NROS_GOAL_ACCEPT_AND_EXECUTE
Definition nros_generated.h:453
@ NROS_GOAL_ACCEPT_AND_DEFER
Definition nros_generated.h:457
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:613
@ NROS_TIMER_STATE_SHUTDOWN
Definition nros_generated.h:629
@ NROS_TIMER_STATE_UNINITIALIZED
Definition nros_generated.h:617
@ NROS_TIMER_STATE_CANCELED
Definition nros_generated.h:625
@ NROS_TIMER_STATE_RUNNING
Definition nros_generated.h:621
const char * nros_client_get_service_name(const struct nros_client_t *client)
nros_deadline_policy_t
Definition nros_generated.h:756
@ NROS_DEADLINE_POLICY_RELEASED
Definition nros_generated.h:757
@ NROS_DEADLINE_POLICY_INHERITED
Definition nros_generated.h:759
@ NROS_DEADLINE_POLICY_ACTIVATED
Definition nros_generated.h:758
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:477
@ NROS_QOS_RELIABILITY_BEST_EFFORT
Definition nros_generated.h:481
@ NROS_QOS_RELIABILITY_RELIABLE
Definition nros_generated.h:485
#define NROS_MAX_SERVICE_NAME_LEN
Definition nros_generated.h:88
nros_executor_semantics_t
Definition nros_generated.h:302
@ NROS_SEMANTICS_RCLCPP_EXECUTOR
Definition nros_generated.h:307
@ NROS_SEMANTICS_LOGICAL_EXECUTION_TIME
Definition nros_generated.h:315
nros_parameter_type_t
Definition nros_generated.h:232
@ NROS_PARAMETER_STRING
Definition nros_generated.h:252
@ NROS_PARAMETER_INTEGER
Definition nros_generated.h:244
@ NROS_PARAMETER_DOUBLE_ARRAY
Definition nros_generated.h:268
@ NROS_PARAMETER_INTEGER_ARRAY
Definition nros_generated.h:264
@ NROS_PARAMETER_BOOL_ARRAY
Definition nros_generated.h:260
@ NROS_PARAMETER_BYTE_ARRAY
Definition nros_generated.h:256
@ NROS_PARAMETER_BOOL
Definition nros_generated.h:240
@ NROS_PARAMETER_NOT_SET
Definition nros_generated.h:236
@ NROS_PARAMETER_STRING_ARRAY
Definition nros_generated.h:272
@ NROS_PARAMETER_DOUBLE
Definition nros_generated.h:248
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:367
@ NROS_GOAL_STATUS_EXECUTING
Definition nros_generated.h:379
@ NROS_GOAL_STATUS_SUCCEEDED
Definition nros_generated.h:387
@ NROS_GOAL_STATUS_ABORTED
Definition nros_generated.h:395
@ NROS_GOAL_STATUS_UNKNOWN
Definition nros_generated.h:371
@ NROS_GOAL_STATUS_ACCEPTED
Definition nros_generated.h:375
@ NROS_GOAL_STATUS_CANCELED
Definition nros_generated.h:391
@ NROS_GOAL_STATUS_CANCELING
Definition nros_generated.h:383
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:1735
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:555
@ NROS_SUBSCRIPTION_STATE_SHUTDOWN
Definition nros_generated.h:568
@ NROS_SUBSCRIPTION_STATE_POLLING
Definition nros_generated.h:575
@ NROS_SUBSCRIPTION_STATE_INITIALIZED
Definition nros_generated.h:564
@ NROS_SUBSCRIPTION_STATE_UNINITIALIZED
Definition nros_generated.h:559
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:401
@ NROS_NODE_STATE_SHUTDOWN
Definition nros_generated.h:413
@ NROS_NODE_STATE_UNINITIALIZED
Definition nros_generated.h:405
@ NROS_NODE_STATE_INITIALIZED
Definition nros_generated.h:409
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:174
@ NROS_CLOCK_STEADY_TIME
Definition nros_generated.h:190
@ NROS_CLOCK_ROS_TIME
Definition nros_generated.h:182
@ NROS_CLOCK_UNINITIALIZED
Definition nros_generated.h:178
@ NROS_CLOCK_SYSTEM_TIME
Definition nros_generated.h:186
#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:1802
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:463
@ NROS_CANCEL_REJECT
Definition nros_generated.h:467
@ NROS_CANCEL_ACCEPT
Definition nros_generated.h:471
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:888
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:735
@ NROS_SCHED_PRIORITY_NORMAL
Definition nros_generated.h:737
@ NROS_SCHED_PRIORITY_CRITICAL
Definition nros_generated.h:736
@ NROS_SCHED_PRIORITY_BEST_EFFORT
Definition nros_generated.h:738
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:1106
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:1886
nros_executor_invocation_t
Definition nros_generated.h:599
@ NROS_EXECUTOR_ALWAYS
Definition nros_generated.h:607
@ NROS_EXECUTOR_ON_NEW_DATA
Definition nros_generated.h:603
#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:2049
void * nros_platform_alloc(size_t size)
nros_support_state_t
Definition nros_generated.h:321
@ NROS_SUPPORT_STATE_INITIALIZED
Definition nros_generated.h:329
@ NROS_SUPPORT_STATE_SHUTDOWN
Definition nros_generated.h:333
@ NROS_SUPPORT_STATE_UNINITIALIZED
Definition nros_generated.h:325
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:491
@ NROS_QOS_DURABILITY_VOLATILE
Definition nros_generated.h:495
@ NROS_QOS_DURABILITY_TRANSIENT_LOCAL
Definition nros_generated.h:499
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:1423
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:1751
Definition nros_generated.h:1244
int32_t arena_entry_index
Definition nros_generated.h:1249
void * executor_ptr
Definition nros_generated.h:1253
Definition nros_generated.h:1505
void * c_context
Definition nros_generated.h:1534
struct nros_action_server_t * server_ptr
Definition nros_generated.h:1538
nros_cancel_callback_t c_cancel_callback
Definition nros_generated.h:1526
nros_accepted_callback_t c_accepted_callback
Definition nros_generated.h:1530
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:1518
ActionServerRawHandle handle
Definition nros_generated.h:1510
void * executor_ptr
Definition nros_generated.h:1514
Definition nros_generated.h:2058
void * executor_ptr
Definition nros_generated.h:2066
int32_t arena_entry_index
Definition nros_generated.h:2062
uint32_t timeout_ms
Definition nros_generated.h:2070
Definition nros_generated.h:1958
int32_t arena_entry_index
Definition nros_generated.h:1962
void * executor_ptr
Definition nros_generated.h:1966
Definition nros_generated.h:1359
nros_sched_context_id_t sched_context
Definition nros_generated.h:1367
uint8_t _reserved[3]
Definition nros_generated.h:1371
Definition nros_generated.h:1259
void * context
Definition nros_generated.h:1303
struct ActionClientInternal _internal
Definition nros_generated.h:1320
size_t type_name_len
Definition nros_generated.h:1279
uint8_t action_name[256]
Definition nros_generated.h:1267
size_t type_hash_len
Definition nros_generated.h:1287
const struct nros_node_t * node
Definition nros_generated.h:1307
nros_sched_context_id_t sched_context_id
Definition nros_generated.h:1315
size_t action_name_len
Definition nros_generated.h:1271
uint8_t type_name[256]
Definition nros_generated.h:1275
uint64_t _opaque[ACTION_CLIENT_OPAQUE_U64S]
Definition nros_generated.h:1326
nros_feedback_callback_t feedback_callback
Definition nros_generated.h:1295
nros_result_callback_t result_callback
Definition nros_generated.h:1299
enum nros_action_client_state_t state
Definition nros_generated.h:1263
uint8_t type_hash[128]
Definition nros_generated.h:1283
nros_goal_response_callback_t goal_response_callback
Definition nros_generated.h:1291
Definition nros_generated.h:1627
uint8_t _reserved[3]
Definition nros_generated.h:1639
nros_sched_context_id_t sched_context
Definition nros_generated.h:1635
Definition nros_generated.h:1544
struct nros_qos_t qos
Definition nros_generated.h:1600
size_t action_name_len
Definition nros_generated.h:1556
size_t type_hash_len
Definition nros_generated.h:1572
struct ActionServerInternal _internal
Definition nros_generated.h:1614
uint8_t action_name[256]
Definition nros_generated.h:1552
nros_cancel_callback_t cancel_callback
Definition nros_generated.h:1580
void * context
Definition nros_generated.h:1588
size_t type_name_len
Definition nros_generated.h:1564
uint8_t type_name[256]
Definition nros_generated.h:1560
enum nros_action_server_state_t state
Definition nros_generated.h:1548
nros_accepted_callback_t accepted_callback
Definition nros_generated.h:1584
nros_sched_context_id_t sched_context_id
Definition nros_generated.h:1609
const struct nros_node_t * node
Definition nros_generated.h:1592
uint64_t _opaque[ACTION_SERVER_OPAQUE_U64S]
Definition nros_generated.h:1620
uint8_t type_hash[128]
Definition nros_generated.h:1568
nros_goal_callback_t goal_callback
Definition nros_generated.h:1576
Definition nros_generated.h:1332
const char * type_hash
Definition nros_generated.h:1340
size_t result_serialized_size_max
Definition nros_generated.h:1348
size_t goal_serialized_size_max
Definition nros_generated.h:1344
const char * type_name
Definition nros_generated.h:1336
size_t feedback_serialized_size_max
Definition nros_generated.h:1352
Definition nros_generated.h:2347
nros_sched_context_id_t sched_context
Definition nros_generated.h:2354
uint8_t _reserved[3]
Definition nros_generated.h:2358
Definition nros_generated.h:2076
size_t type_name_len
Definition nros_generated.h:2096
const struct nros_node_t * node
Definition nros_generated.h:2117
uint8_t type_hash[128]
Definition nros_generated.h:2100
void * context
Definition nros_generated.h:2113
enum nros_client_state_t state
Definition nros_generated.h:2080
struct ServiceClientInternal _internal
Definition nros_generated.h:2136
uint64_t _opaque[SERVICE_CLIENT_OPAQUE_U64S]
Definition nros_generated.h:2143
struct nros_qos_t qos
Definition nros_generated.h:2123
uint8_t type_name[256]
Definition nros_generated.h:2092
size_t type_hash_len
Definition nros_generated.h:2104
uint8_t service_name[256]
Definition nros_generated.h:2084
nros_sched_context_id_t sched_context_id
Definition nros_generated.h:2131
nros_response_callback_t response_callback
Definition nros_generated.h:2109
size_t service_name_len
Definition nros_generated.h:2088
Definition nros_generated.h:774
enum nros_clock_state_t state
Definition nros_generated.h:782
enum nros_clock_type_t type
Definition nros_generated.h:778
uint64_t _steady_epoch_ns
Definition nros_generated.h:786
Definition nros_generated.h:1742
uint32_t total_count
Definition nros_generated.h:1743
uint32_t total_count_change
Definition nros_generated.h:1744
Definition nros_generated.h:813
uint32_t nanosec
Definition nros_generated.h:821
int32_t sec
Definition nros_generated.h:817
Definition nros_generated.h:981
const struct nros_support_t * support
Definition nros_generated.h:997
nros_executor_trigger_t trigger
Definition nros_generated.h:1001
void * trigger_context
Definition nros_generated.h:1005
uint64_t _opaque[EXECUTOR_OPAQUE_U64S]
Definition nros_generated.h:1040
size_t max_handles
Definition nros_generated.h:1013
bool in_dispatch
Definition nros_generated.h:1035
size_t timer_count
Definition nros_generated.h:1021
enum nros_executor_state_t state
Definition nros_generated.h:985
size_t handle_count
Definition nros_generated.h:1009
uint64_t timeout_ns
Definition nros_generated.h:989
size_t subscription_count
Definition nros_generated.h:1017
uint64_t invocation_time_ns
Definition nros_generated.h:1029
enum nros_executor_semantics_t semantics
Definition nros_generated.h:993
size_t service_count
Definition nros_generated.h:1025
Definition nros_generated.h:1398
struct nros_goal_uuid_t uuid
Definition nros_generated.h:1402
Definition nros_generated.h:1080
uint8_t uuid[16]
Definition nros_generated.h:1084
Definition nros_generated.h:2154
bool _guard_valid
Definition nros_generated.h:2182
void * context
Definition nros_generated.h:2170
nros_guard_condition_callback_t callback
Definition nros_generated.h:2166
size_t handle_id
Definition nros_generated.h:2178
uint64_t _guard_opaque[GUARD_HANDLE_OPAQUE_U64S]
Definition nros_generated.h:2187
const struct nros_support_t * _support
Definition nros_generated.h:2174
enum nros_guard_condition_state_t state
Definition nros_generated.h:2158
bool triggered
Definition nros_generated.h:2162
Definition nros_generated.h:2402
int8_t crc_valid
Definition nros_generated.h:2415
int64_t gap
Definition nros_generated.h:2406
bool duplicate
Definition nros_generated.h:2410
Definition nros_generated.h:2240
uint64_t storage[NROS_LIFECYCLE_CTX_OPAQUE_U64S]
Definition nros_generated.h:2252
bool initialized
Definition nros_generated.h:2244
uint8_t _pad[7]
Definition nros_generated.h:2248
Definition nros_generated.h:1725
int16_t not_alive_count_change
Definition nros_generated.h:1729
int16_t alive_count_change
Definition nros_generated.h:1728
uint16_t not_alive_count
Definition nros_generated.h:1727
uint16_t alive_count
Definition nros_generated.h:1726
Definition nros_generated.h:2285
const char * type_hash
Definition nros_generated.h:2293
const char * type_name
Definition nros_generated.h:2289
size_t serialized_size_max
Definition nros_generated.h:2297
Definition nros_generated.h:1819
size_t namespace_len
Definition nros_generated.h:1827
size_t locator_len
Definition nros_generated.h:1845
uint8_t locator[128]
Definition nros_generated.h:1841
uint8_t _reserved[3]
Definition nros_generated.h:1857
size_t rmw_name_len
Definition nros_generated.h:1836
uint32_t domain_id_override
Definition nros_generated.h:1849
uint8_t sched_context_id
Definition nros_generated.h:1853
uint8_t rmw_name[32]
Definition nros_generated.h:1832
uint8_t namespace_[128]
Definition nros_generated.h:1823
Definition nros_generated.h:1152
uint8_t sched_context_id
Definition nros_generated.h:1195
uint8_t node_id
Definition nros_generated.h:1206
const struct nros_executor_t * executor
Definition nros_generated.h:1217
size_t rmw_name_len
Definition nros_generated.h:1185
uint8_t rmw_name[32]
Definition nros_generated.h:1181
uint32_t domain_id_override
Definition nros_generated.h:1190
const struct nros_qos_override_t * qos_overrides
Definition nros_generated.h:1223
uint8_t _reserved[3]
Definition nros_generated.h:1199
size_t name_len
Definition nros_generated.h:1164
enum nros_node_state_t state
Definition nros_generated.h:1156
size_t namespace_len
Definition nros_generated.h:1172
uint8_t name[64]
Definition nros_generated.h:1160
uint8_t namespace_[128]
Definition nros_generated.h:1168
const struct nros_support_t * support
Definition nros_generated.h:1176
size_t qos_overrides_len
Definition nros_generated.h:1227
Definition nros_generated.h:830
size_t len
Definition nros_generated.h:838
const void * data
Definition nros_generated.h:834
Definition nros_generated.h:895
enum nros_param_server_state_t state
Definition nros_generated.h:899
size_t count
Definition nros_generated.h:907
struct nros_parameter_t * parameters
Definition nros_generated.h:911
void * callback_context
Definition nros_generated.h:919
nros_param_callback_t callback
Definition nros_generated.h:915
size_t capacity
Definition nros_generated.h:903
Definition nros_generated.h:870
enum nros_parameter_type_t type
Definition nros_generated.h:878
uint8_t name[64]
Definition nros_generated.h:874
union nros_parameter_value_t value
Definition nros_generated.h:882
Definition nros_generated.h:2270
uint8_t _reserved[4]
Definition nros_generated.h:2276
Definition nros_generated.h:1758
uint8_t type_name[256]
Definition nros_generated.h:1774
uint8_t topic_name[256]
Definition nros_generated.h:1766
enum nros_publisher_state_t state
Definition nros_generated.h:1762
size_t topic_name_len
Definition nros_generated.h:1770
size_t type_hash_len
Definition nros_generated.h:1786
uint64_t _opaque[PUBLISHER_OPAQUE_U64S]
Definition nros_generated.h:1795
size_t type_name_len
Definition nros_generated.h:1778
uint8_t type_hash[128]
Definition nros_generated.h:1782
const struct nros_node_t * node
Definition nros_generated.h:1790
Definition nros_generated.h:1125
uint8_t policy
Definition nros_generated.h:1138
const char * topic
Definition nros_generated.h:1130
uint8_t role
Definition nros_generated.h:1134
uint32_t value
Definition nros_generated.h:1144
Definition nros_generated.h:1448
enum nros_qos_reliability_t reliability
Definition nros_generated.h:1452
uint32_t liveliness_lease_ms
Definition nros_generated.h:1481
uint8_t avoid_ros_namespace_conventions
Definition nros_generated.h:1485
enum nros_qos_liveliness_t liveliness_kind
Definition nros_generated.h:1464
int depth
Definition nros_generated.h:1468
enum nros_qos_history_t history
Definition nros_generated.h:1460
enum nros_qos_durability_t durability
Definition nros_generated.h:1456
uint8_t tx_express
Definition nros_generated.h:1492
uint32_t deadline_ms
Definition nros_generated.h:1473
uint32_t lifespan_ms
Definition nros_generated.h:1477
Definition nros_generated.h:2197
uint8_t os_pri
Definition nros_generated.h:2218
nros_sched_class_t class_
Definition nros_generated.h:2198
uint32_t tt_window_offset_us
Definition nros_generated.h:2224
uint32_t period_us
Definition nros_generated.h:2204
nros_deadline_policy_t deadline_policy
Definition nros_generated.h:2200
uint32_t budget_us
Definition nros_generated.h:2208
nros_sched_priority_t priority
Definition nros_generated.h:2199
uint32_t tt_window_duration_us
Definition nros_generated.h:2229
uint32_t deadline_us
Definition nros_generated.h:2212
Definition nros_generated.h:2326
uint8_t _reserved[3]
Definition nros_generated.h:2339
nros_sched_context_id_t sched_context
Definition nros_generated.h:2335
Definition nros_generated.h:1972
uint8_t type_hash[128]
Definition nros_generated.h:1996
uint8_t type_name[256]
Definition nros_generated.h:1988
const struct nros_node_t * node
Definition nros_generated.h:2012
size_t service_name_len
Definition nros_generated.h:1984
nros_service_callback_t callback
Definition nros_generated.h:2004
size_t type_hash_len
Definition nros_generated.h:2000
enum nros_service_state_t state
Definition nros_generated.h:1976
struct ServiceServerInternal _internal
Definition nros_generated.h:2031
uint8_t service_name[256]
Definition nros_generated.h:1980
struct nros_qos_t qos
Definition nros_generated.h:2018
nros_sched_context_id_t sched_context_id
Definition nros_generated.h:2026
size_t type_name_len
Definition nros_generated.h:1992
uint64_t _opaque[SERVICE_SERVER_OPAQUE_U64S]
Definition nros_generated.h:2038
void * context
Definition nros_generated.h:2008
Definition nros_generated.h:2306
const char * type_hash
Definition nros_generated.h:2314
const char * type_name
Definition nros_generated.h:2310
Definition nros_generated.h:2371
nros_sched_context_id_t sched_context
Definition nros_generated.h:2381
uint8_t _reserved[2]
Definition nros_generated.h:2394
uint8_t message_info
Definition nros_generated.h:2389
Definition nros_generated.h:1655
const struct nros_node_t * node
Definition nros_generated.h:1695
nros_sched_context_id_t sched_context_id
Definition nros_generated.h:1713
enum nros_subscription_state_t state
Definition nros_generated.h:1659
size_t type_hash_len
Definition nros_generated.h:1683
size_t handle_id
Definition nros_generated.h:1703
struct nros_qos_t qos
Definition nros_generated.h:1699
uint8_t topic_name[256]
Definition nros_generated.h:1663
uint64_t _opaque[SUBSCRIPTION_OPAQUE_U64S]
Definition nros_generated.h:1719
void * context
Definition nros_generated.h:1691
nros_subscription_callback_t callback
Definition nros_generated.h:1687
size_t type_name_len
Definition nros_generated.h:1675
size_t topic_name_len
Definition nros_generated.h:1667
uint8_t type_name[256]
Definition nros_generated.h:1671
uint8_t type_hash[128]
Definition nros_generated.h:1679
Definition nros_generated.h:928
uint8_t locator[128]
Definition nros_generated.h:940
uint8_t domain_id
Definition nros_generated.h:936
uint64_t _opaque[SESSION_OPAQUE_U64S]
Definition nros_generated.h:949
size_t locator_len
Definition nros_generated.h:944
enum nros_support_state_t state
Definition nros_generated.h:932
Definition nros_generated.h:799
int32_t sec
Definition nros_generated.h:803
uint32_t nanosec
Definition nros_generated.h:807
Definition nros_generated.h:1891
void * context
Definition nros_generated.h:1911
uint64_t last_call_time_ns
Definition nros_generated.h:1903
const struct nros_support_t * support
Definition nros_generated.h:1915
size_t handle_id
Definition nros_generated.h:1919
enum nros_timer_state_t state
Definition nros_generated.h:1895
uint64_t period_ns
Definition nros_generated.h:1899
nros_timer_callback_t callback
Definition nros_generated.h:1907
void * _executor
Definition nros_generated.h:1923
Definition nros_generated.h:1067
uint32_t _reserved
Definition nros_generated.h:1069
nros_ret_t(* write)(void *user_data, const uint8_t *buf, size_t len)
Definition nros_generated.h:1073
void(* close)(void *user_data)
Definition nros_generated.h:1072
nros_ret_t(* open)(void *user_data, const void *params)
Definition nros_generated.h:1071
uint32_t abi_version
Definition nros_generated.h:1068
void * user_data
Definition nros_generated.h:1070
int32_t(* read)(void *user_data, uint8_t *buf, size_t len, uint32_t timeout_ms)
Definition nros_generated.h:1074
Definition nros_generated.h:1382
uint64_t _opaque[2]
Definition nros_generated.h:1383
Definition nros_generated.h:844
double double_value
Definition nros_generated.h:856
uint8_t string_value[128]
Definition nros_generated.h:860
struct nros_param_array_t array_value
Definition nros_generated.h:864
bool bool_value
Definition nros_generated.h:848
int64_t integer_value
Definition nros_generated.h:852
#define NROS_PUBLIC
Definition visibility.h:33