Nexus Embedded Platform 1.0.0
Statically assembled reusable embedded mechanisms
Loading...
Searching...
No Matches
request_observer.h
Go to the documentation of this file.
1
6#ifndef NEXUS_REQUEST_OBSERVER_H
7#define NEXUS_REQUEST_OBSERVER_H
9#ifdef __cplusplus
10extern "C" {
11#endif
22
40
49 const nx_request_slot_t* slot,
50 uint64_t epoch);
66 nx_time_us_t now,
75#ifdef __cplusplus
76}
77#endif
78#endif
Caller-owned admission, borrow, settlement and stable cancellation.
nx_request_state_t
Request state; only READY and SETTLED have no provider borrow.
Definition request.h:20
nx_result_t nx_request_observer_bind(nx_request_observer_t *observer, const nx_request_slot_t *slot, uint64_t epoch)
Bind the exact live incarnation without storing its pointer.
nx_result_t nx_request_observer_sample(nx_request_observer_t *observer, nx_time_us_t now, nx_request_observation_t *out)
Copy state and acquire-observed final result for exact epoch.
void nx_request_observer_detach(nx_request_observer_t *observer)
Remove only this sidecar reference, leaving loans untouched.
nx_result_t
Operation result; success at submission means admission only.
Definition status.h:21
Copied facts; result/count are valid only when settled is true.
nx_request_state_t state
Caller-owned optional sidecar, fresh zero storage before bind.
nx_request_state_t last_state
const nx_request_slot_t * slot
Adapter-owned stable cancellation identity.
Definition request.h:53
uint64_t nx_time_us_t
Microseconds in one boot/clock domain; no wall-clock semantics.
Definition time.h:20