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

#include <nros_generated.h>

Collaboration diagram for nros_subscription_t:
Collaboration graph
[legend]

Data Fields

uint64_t _opaque [SUBSCRIPTION_OPAQUE_U64S]
 
nros_subscription_callback_t callback
 
void * context
 
size_t handle_id
 
const struct nros_node_tnode
 
struct nros_qos_t qos
 
nros_sched_context_id_t sched_context_id
 
enum nros_subscription_state_t state
 
uint8_t topic_name [256]
 
size_t topic_name_len
 
uint8_t type_hash [128]
 
size_t type_hash_len
 
uint8_t type_name [256]
 
size_t type_name_len
 

Detailed Description

Subscription structure.

Field Documentation

◆ _opaque

uint64_t nros_subscription_t::_opaque[SUBSCRIPTION_OPAQUE_U64S]

Phase 122.3.b — inline opaque storage for the L1 polling-mode RawSubscription<MESSAGE_BUFFER_SIZE>. Zeroed in callback (L2) mode; populated by nros_subscription_init_polling.

◆ callback

nros_subscription_callback_t nros_subscription_t::callback

User callback function

◆ context

void* nros_subscription_t::context

User context pointer

◆ handle_id

size_t nros_subscription_t::handle_id

Handle ID from executor registration (SIZE_MAX = not registered)

◆ node

const struct nros_node_t* nros_subscription_t::node

Pointer to parent node

◆ qos

struct nros_qos_t nros_subscription_t::qos

QoS settings (stored during init, used by executor registration)

◆ sched_context_id

nros_sched_context_id_t nros_subscription_t::sched_context_id

Phase 189.M3 — scheduling-context slot requested via [nros_subscription_init_with_options]. 0 = inherit the executor / Node default (no explicit bind), matching the nros_node_options_t::sched_context_id convention. When non-zero, nros_executor_register_subscription binds the freshly-created handle to this SC after registration. Has no effect on the L1 polling path (no executor handle to bind).

◆ state

enum nros_subscription_state_t nros_subscription_t::state

Current state

◆ topic_name

uint8_t nros_subscription_t::topic_name[256]

Topic name storage

◆ topic_name_len

size_t nros_subscription_t::topic_name_len

Topic name length

◆ type_hash

uint8_t nros_subscription_t::type_hash[128]

Type hash storage

◆ type_hash_len

size_t nros_subscription_t::type_hash_len

Type hash length

◆ type_name

uint8_t nros_subscription_t::type_name[256]

Type name storage

◆ type_name_len

size_t nros_subscription_t::type_name_len

Type name length


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