|
Nexus Embedded Platform 0.1.0
Statically assembled reusable embedded mechanisms
|
One real execution owner, injected without OS dependency. More...
#include <bus_owner.h>
Data Fields | |
| void * | context |
| nx_result_t(* | start )(void *, void *operation, nx_time_us_t deadline) |
| nx_result_t(* | service )(void *, nx_result_t *result, size_t *transferred) |
| nx_result_t(* | cancel )(void *) |
| bool | terminal_authority |
One real execution owner, injected without OS dependency.
start SUCCESS borrows operation until service SUCCESS. BUSY or any start error retains zero operation references/hardware effects; an error after partial start must instead accept and report through service. service SUCCESS proves all hardware/IRQ/deferred accesses stopped, writes final result/count, and releases the operation. BUSY still borrows. Other service errors retain ownership and require continued recovery/service. cancel requests drain; it never by itself releases operation. Callbacks run only in the externally scheduled executor, outside adapter metadata guard.
Definition at line 49 of file bus_owner.h.
| nx_result_t(* nx_owner_executor_port_t::cancel) (void *) |
Definition at line 53 of file bus_owner.h.
| void* nx_owner_executor_port_t::context |
Definition at line 50 of file bus_owner.h.
| nx_result_t(* nx_owner_executor_port_t::service) (void *, nx_result_t *result, size_t *transferred) |
Definition at line 52 of file bus_owner.h.
| nx_result_t(* nx_owner_executor_port_t::start) (void *, void *operation, nx_time_us_t deadline) |
Definition at line 51 of file bus_owner.h.
| bool nx_owner_executor_port_t::terminal_authority |
Definition at line 54 of file bus_owner.h.