rcbench
Servo and ESC test bench: panel, IOmcu and shared C
Loading...
Searching...
No Matches
ui_plot_t Struct Reference

Data Fields

ui_plot_series_t series [UI_PLOT_MAX_SERIES]
int count
float ring [UI_PLOT_MAX_SERIES][UI_PLOT_HISTORY]
int head
int filled
float scale [UI_PLOT_MAX_SERIES]
int shrink_hold [UI_PLOT_MAX_SERIES]
bool hidden [UI_PLOT_MAX_SERIES]
int focus
float span_s
bool running
uint32_t pushes
uint32_t revision
 Bumped when what ui_plot_render() would draw changes: an accepted push, a clear, or a change of running state.

Field Documentation

◆ filled

int ui_plot_t::filled

how many are valid, capped at UI_PLOT_HISTORY

◆ focus

int ui_plot_t::focus

index, or -1

◆ head

int ui_plot_t::head

where the next sample goes

◆ pushes

uint32_t ui_plot_t::pushes

Calls to ui_plot_push(), whether or not the plot took the sample.

A screen keeps the count it last drew into each framebuffer and skips the readouts beside the plot when it has not moved. The samples a stopped plot declines are still new numbers for those, so this counts the call: what the plot would draw is revision.

◆ revision

uint32_t ui_plot_t::revision

Bumped when what ui_plot_render() would draw changes: an accepted push, a clear, or a change of running state.

A screen keys the plot on this and the readouts on pushes. The panel refreshes at 60Hz and samples arrive at 20Hz, so about two frames in three would otherwise repaint an identical plot region into the PSRAM (pseudo-static random-access memory) the LCD (liquid-crystal display) scans out of – and a stopped plot would repaint every one of them.

◆ running

bool ui_plot_t::running

Whether the trace advances.

A stopped plot holds what it has: ui_plot_push() counts the call and drops the sample, and ui_plot_update_scales() leaves the scales where they are. Stopping is what makes the plot a record of something that has ended rather than a window that slides over it.

◆ span_s

float ui_plot_t::span_s

the width of the time base, for the axis label


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