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

#include <nros_generated.h>

Collaboration diagram for ActionServerInternal:
Collaboration graph
[legend]

Data Fields

nros_accepted_callback_t c_accepted_callback
 
nros_cancel_callback_t c_cancel_callback
 
void * c_context
 
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 *)
 
void * executor_ptr
 
ActionServerRawHandle handle
 
struct nros_action_server_tserver_ptr
 

Detailed Description

Internal state created during executor registration.

Holds the action server handle and C callback pointers needed by the goal/cancel trampolines.

handle was Option<ActionServerRawHandle> previously; now it is always present, with the sentinel INVALID_ENTRY_INDEX indicating "not registered yet". Use is_handle_set() to check.

Field Documentation

◆ c_accepted_callback

nros_accepted_callback_t ActionServerInternal::c_accepted_callback

C accepted callback from init (may be None).

◆ c_cancel_callback

nros_cancel_callback_t ActionServerInternal::c_cancel_callback

C cancel callback from init (may be None).

◆ c_context

void* ActionServerInternal::c_context

C user context from init.

◆ c_goal_callback

enum nros_goal_response_t(* ActionServerInternal::c_goal_callback) (struct nros_action_server_t *, const struct nros_goal_handle_t *, const uint8_t *, size_t, void *)

C goal callback from init. Required.

◆ executor_ptr

void* ActionServerInternal::executor_ptr

Pointer to the internal executor (CExecutor).

◆ handle

ActionServerRawHandle ActionServerInternal::handle

Handle returned by executor registration. entry_index == INVALID_ENTRY_INDEX until registration completes.

◆ server_ptr

struct nros_action_server_t* ActionServerInternal::server_ptr

Pointer back to the C action server struct.


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