nros C API
Lightweight ROS 2 client for embedded real-time systems
Loading...
Searching...
No Matches
Data Fields
nros_action_server_t Struct Reference

#include <nros_generated.h>

Collaboration diagram for nros_action_server_t:
Collaboration graph
[legend]

Data Fields

struct ActionServerInternal _internal
 
uint64_t _opaque [ACTION_SERVER_OPAQUE_U64S]
 
nros_accepted_callback_t accepted_callback
 
uint8_t action_name [256]
 
size_t action_name_len
 
nros_cancel_callback_t cancel_callback
 
void * context
 
nros_goal_callback_t goal_callback
 
const struct nros_node_tnode
 
struct nros_qos_t qos
 
nros_sched_context_id_t sched_context_id
 
enum nros_action_server_state_t state
 
uint8_t type_hash [128]
 
size_t type_hash_len
 
uint8_t type_name [256]
 
size_t type_name_len
 

Detailed Description

Action server structure.

Field Documentation

◆ _internal

struct ActionServerInternal nros_action_server_t::_internal

Internal state — set by nros_executor_register_action_server. Typed C-ABI handle field (was an opaque blob in earlier versions).

◆ _opaque

uint64_t nros_action_server_t::_opaque[ACTION_SERVER_OPAQUE_U64S]

Phase 122.3.c.6.b — inline opaque storage for the L1 polling-mode ActionServerCore. Zeroed in L2 mode; populated by nros_action_server_init_polling.

◆ accepted_callback

nros_accepted_callback_t nros_action_server_t::accepted_callback

Accepted callback

◆ action_name

uint8_t nros_action_server_t::action_name[256]

Action name storage

◆ action_name_len

size_t nros_action_server_t::action_name_len

Action name length

◆ cancel_callback

nros_cancel_callback_t nros_action_server_t::cancel_callback

Cancel callback

◆ context

void* nros_action_server_t::context

User context pointer

◆ goal_callback

nros_goal_callback_t nros_action_server_t::goal_callback

Goal callback

◆ node

const struct nros_node_t* nros_action_server_t::node

Pointer to parent node

◆ qos

struct nros_qos_t nros_action_server_t::qos

Phase 193.4b — action-server QoS, applied to the three underlying service servers (send_goal / cancel_goal / get_result). The feedback + status publishers keep their own profiles. Defaults to the services profile (RELIABLE+VOLATILE+KEEP_LAST(10)); set via nros_action_server_init_with_qos.

◆ sched_context_id

nros_sched_context_id_t nros_action_server_t::sched_context_id

Phase 189.M3.3.b — scheduling-context slot to bind the action server's executor handle to (the goal-service slot; governs the action's callback dispatch). 0 = inherit the executor / Node default; set via nros_action_server_init_with_options. When non-zero, nros_executor_register_action_server binds the handle after registration. No effect on the L1 polling path.

◆ state

enum nros_action_server_state_t nros_action_server_t::state

Current state

◆ type_hash

uint8_t nros_action_server_t::type_hash[128]

Type hash storage

◆ type_hash_len

size_t nros_action_server_t::type_hash_len

Type hash length

◆ type_name

uint8_t nros_action_server_t::type_name[256]

Type name storage

◆ type_name_len

size_t nros_action_server_t::type_name_len

Type name length


The documentation for this struct was generated from the following file: