|
nros C API
Lightweight ROS 2 client for embedded real-time systems
|
#include <nros_generated.h>

Data Fields | |
| struct ActionClientInternal | _internal |
| uint8_t | action_name [256] |
| size_t | action_name_len |
| void * | context |
| struct rclc_action_endpoint_hashes_t | endpoint_hashes |
| rclc_feedback_callback_t | feedback_callback |
| rclc_goal_response_callback_t | goal_response_callback |
| struct rclc_node_ref_t | node |
| rclc_result_callback_t | result_callback |
| rclc_sched_context_id_t | sched_context_id |
| enum rclc_action_client_state_t | state |
| uint8_t | type_hash [128] |
| size_t | type_hash_len |
| uint8_t | type_name [256] |
| size_t | type_name_len |
An action client the executor dispatches.
phase-487 W4 (RFC-0096 D9, the C half): the executor arena owns the channels and buffers; this struct holds the arena handle (_internal), the registration description and the callback record the arena's trampolines read, as the C++ action client does. A client the caller drives itself is a [rclc_polling_action_client_t].
| struct ActionClientInternal rcl_action_client_t::_internal |
Internal state (arena entry index + executor pointer). Phase 87.5: Typed C-ABI handle field.
| uint8_t rcl_action_client_t::action_name[256] |
Action name storage
| size_t rcl_action_client_t::action_name_len |
Action name length
| void* rcl_action_client_t::context |
User context pointer
| struct rclc_action_endpoint_hashes_t rcl_action_client_t::endpoint_hashes |
Issue 1913 — the per-endpoint hashes, copied from the type support at init (static-storage pointers; NULL falls back to type_hash).
| rclc_feedback_callback_t rcl_action_client_t::feedback_callback |
Feedback callback
| rclc_goal_response_callback_t rcl_action_client_t::goal_response_callback |
Goal response callback (for async send_goal)
| struct rclc_node_ref_t rcl_action_client_t::node |
Pointer to parent node
| rclc_result_callback_t rcl_action_client_t::result_callback |
Result callback
| rclc_sched_context_id_t rcl_action_client_t::sched_context_id |
Phase 189.M3.3.b — scheduling-context slot to bind the action client's executor handle to. 0 = inherit the executor / Node default; set via rcl_action_client_init's options. When non-zero, rclc_executor_attach_action_client binds the handle after registration. No effect on the L1 polling path.
| enum rclc_action_client_state_t rcl_action_client_t::state |
Current state
| uint8_t rcl_action_client_t::type_hash[128] |
Type hash storage
| size_t rcl_action_client_t::type_hash_len |
Type hash length
| uint8_t rcl_action_client_t::type_name[256] |
Type name storage
| size_t rcl_action_client_t::type_name_len |
Type name length