Nexus Embedded Platform 0.1.0
Statically assembled reusable embedded mechanisms
Loading...
Searching...
No Matches
owner_observer.h
Go to the documentation of this file.
1
6#ifndef NEXUS_COMPONENTS_OWNER_OBSERVER_H
7#define NEXUS_COMPONENTS_OWNER_OBSERVER_H
9#ifdef __cplusplus
10extern "C" {
11#endif
28
41
48 nx_bus_owner_t* owner);
63 nx_time_us_t now,
70#ifdef __cplusplus
71}
72#endif
73#endif
Explicit bounded multi-producer, single-executor adapter.
nx_result_t nx_owner_observer_service(nx_owner_observer_t *observer, nx_time_us_t now, nx_owner_observation_t *out)
Execute exactly one real service step and copy diagnostics.
nx_result_t nx_owner_observer_bind(nx_owner_observer_t *observer, nx_bus_owner_t *owner)
Bind an initialized exact owner without creating work.
void nx_owner_observer_detach(nx_owner_observer_t *observer)
Drop only the observation binding, no owner/loan teardown.
nx_request_state_t
Request state; only READY and SETTLED have no provider borrow.
Definition request.h:20
nx_result_t
Operation result; success at submission means admission only.
Definition status.h:21
Explicit adapter state; external application supplies all storage.
Definition bus_owner.h:80
Copied service facts without request, payload or slot references.
nx_request_state_t active_state
nx_result_t diagnostic_result
nx_owner_ticket_t active
Opt-in caller sidecar; no pointer added to default owner.
nx_bus_owner_t * owner
nx_time_us_t last_observed
nx_owner_observation_t observation
Stable control identity; never dereference a stale request pointer.
Definition bus_owner.h:61
uint64_t nx_time_us_t
Microseconds in one boot/clock domain; no wall-clock semantics.
Definition time.h:20