|
rcbench
Servo and ESC test bench: panel, IOmcu and shared C
|
The driver: the only way to the wire. More...
#include <kst_session.h>
Data Fields | |
| void * | ctx |
| bool(*) | start (void *ctx, const kst_frame_t *frame, uint32_t window_ns) |
Clocks out frame and records the line up to window_ns; false when it cannot start. | |
| bool(*) | poll (void *ctx, kst_capture_t *out) |
Reports the window's end: false while the transaction runs; true once, with out filled. | |
| uint32_t(*) | now_us (void *ctx) |
The driver: the only way to the wire.
Contract:
window_ns after the frame's last edge. It returns at once; false when it cannot start.out and returns true, once.There is no delay function: the session waits by returning from kst_session_step().
| void* kst_driver_t::ctx |
driver state, passed to each function
| uint32_t(*) kst_driver_t::now_us(void *ctx) |
free-running microseconds, may wrap
| bool(*) kst_driver_t::poll(void *ctx, kst_capture_t *out) |
Reports the window's end: false while the transaction runs; true once, with out filled.
| ctx | Driver state, as in the struct. |
| out | Receives the capture when the window has ended. |
| bool(*) kst_driver_t::start(void *ctx, const kst_frame_t *frame, uint32_t window_ns) |
Clocks out frame and records the line up to window_ns; false when it cannot start.
| ctx | Driver state, as in the struct. |
| frame | Frame to send. |
| window_ns | Time in ns to record after the frame's last edge. |