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

#include <nros_generated.h>

Collaboration diagram for rcl_service_t:
Collaboration graph
[legend]

Data Fields

struct ServiceServerInternal _internal
 
struct rclc_node_ref_t node
 
struct rclc_qos_t qos
 
rclc_sched_context_id_t sched_context_id
 
uint8_t service_name [256]
 
size_t service_name_len
 
enum rclc_service_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

A service server the executor dispatches (rclc's rcl_service_t).

phase-487 W2 (RFC-0096 D9, the C half): the arena entry owns the server, its request and reply buffers, the callback and its context. This struct keeps the arena handle (_internal) and the description the registration reads. A server the caller drains itself is a [rclc_polling_service_t].

Field Documentation

◆ _internal

struct ServiceServerInternal rcl_service_t::_internal

Internal state (arena entry index + executor pointer). Phase 87.5: Typed C-ABI handle field (was an opaque blob in earlier versions).

◆ node

struct rclc_node_ref_t rcl_service_t::node

Pointer to parent node

◆ qos

struct rclc_qos_t rcl_service_t::qos

Phase 193.4 — service QoS (applied to both request + reply endpoints). Defaults to the services profile (RELIABLE+VOLATILE+KEEP_LAST(10)); set via rclc_service_init_with_qos.

◆ sched_context_id

rclc_sched_context_id_t rcl_service_t::sched_context_id

Phase 189.M3.3.a — scheduling-context slot to bind the service's executor handle to. 0 = inherit the executor / Node default (no explicit bind); set via rclc_service_init_with_options. When non-zero, rclc_executor_add_service_raw binds the freshly-created handle to this SC after registration.

◆ service_name

uint8_t rcl_service_t::service_name[256]

Service name storage

◆ service_name_len

size_t rcl_service_t::service_name_len

Service name length

◆ state

enum rclc_service_state_t rcl_service_t::state

Current state

◆ type_hash

uint8_t rcl_service_t::type_hash[128]

Type hash storage

◆ type_hash_len

size_t rcl_service_t::type_hash_len

Type hash length

◆ type_name

uint8_t rcl_service_t::type_name[256]

Type name storage

◆ type_name_len

size_t rcl_service_t::type_name_len

Type name length


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