|
Embedded SDK
Embedded SDK
|
#include "os_seed.h"#include "os_helpers.h"#include "ux.h"

Go to the source code of this file.
Classes | |
| struct | ux_flow_state_t |
| struct | ux_flow_step_s |
Macros | |
| #define | STEPSPIC(x) ((const ux_flow_step_t *const *) PIC(x)) |
| #define | STEPPIC(x) ((const ux_flow_step_t *) PIC(x)) |
| #define | INITPIC(x) ((ux_flow_step_init_t) PIC(x)) |
| #define | STRPIC(x) ((const char *) PIC(x)) |
| #define | FLOW_END_STEP ((const ux_flow_step_t *) 0xFFFFFFFFUL) |
| #define | FLOW_BARRIER ((const ux_flow_step_t *) 0xFFFFFFFEUL) |
| #define | FLOW_LOOP ((const ux_flow_step_t *) 0xFFFFFFFDUL) |
| #define | UX_STEP_FLOWS(stepname, layoutkind, preinit, timeout_ms, validate_flow, error_flow, ...) |
| #define | UX_STEP(stepname, layoutkind, preinit, timeout_ms, validate_cb, error_flow, ...) |
| #define | UX_STEP_INIT(stepname, validate_flow, error_flow, ...) |
| #define | UX_FLOW_DEF_INIT UX_STEP_INIT |
| #define | UX_STEP_CB(stepname, layoutkind, validate_cb, ...) |
| #define | UX_FLOW_DEF_VALID UX_STEP_VALID |
| #define | UX_STEP_VALID UX_STEP_CB |
| #define | UX_STEP_FLOWCB(stepname, layoutkind, validate_flow, error_flow, ...) |
| #define | UX_STEP_CB_INIT(stepname, layoutkind, preinit, validate_cb, ...) |
| #define | UX_STEP_TIMEOUT(stepname, layoutkind, timeout_ms, validate_flow, ...) |
| #define | UX_STEP_NOCB(stepname, layoutkind, ...) |
| #define | UX_FLOW_DEF_NOCB UX_STEP_NOCB |
| #define | UX_STEP_NOCB_INIT(stepname, layoutkind, preinit, ...) |
| #define | UX_STEP_NOCB_POSTINIT(stepname, layoutkind, postinit, ...) |
| #define | UX_FLOW_CALL(flow_name, code) |
| #define | UX_FLOW(flow_name, ...) const ux_flow_step_t *const flow_name[] = {__VA_ARGS__, FLOW_END_STEP} |
| #define | UX_DEF UX_FLOW |
| #define | UX_STEP_AFTER_PIN(stepname, stackslot, callback) |
Typedefs | |
| typedef struct ux_flow_step_s | ux_flow_step_t |
| typedef void(* | ux_flow_step_init_t) (unsigned int stack_slot) |
Enumerations | |
| enum | ux_flow_direction_t { FLOW_DIRECTION_BACKWARD = -1 , FLOW_DIRECTION_START = 0 , FLOW_DIRECTION_FORWARD = 1 } |
Functions | |
| unsigned int | ux_flow_is_first (void) |
| unsigned int | ux_flow_is_last (void) |
| ux_flow_direction_t | ux_flow_direction (void) |
| const ux_flow_step_t * | ux_flow_get_current (void) |
| void | ux_flow_next_no_display (void) |
| void | ux_flow_next (void) |
| void | ux_flow_prev (void) |
| void | ux_flow_validate (void) |
| void | ux_flow_error (unsigned int error) |
| unsigned int | ux_flow_button_callback (unsigned int button_mask, unsigned int button_mask_counter) |
| const void * | ux_stack_get_current_step_params (void) |
| const void * | ux_stack_get_step_params (unsigned int stack_slot) |
| unsigned int | ux_flow_relayout (void) |
| void | ux_flow_init (unsigned int stack_slot, const ux_flow_step_t *const *steps, const ux_flow_step_t *const start_step) |
| void | ux_flow_uninit (unsigned int stack_slot) |
| #define FLOW_BARRIER ((const ux_flow_step_t *) 0xFFFFFFFEUL) |
Fake step implying a double press validation to go to the next step (if any)
Definition at line 96 of file ux_flow_engine.h.
| #define FLOW_END_STEP ((const ux_flow_step_t *) 0xFFFFFFFFUL) |
Last step is marked with a FLOW_END_STEP value
Definition at line 92 of file ux_flow_engine.h.
| #define FLOW_LOOP ((const ux_flow_step_t *) 0xFFFFFFFDUL) |
Fake step to be used as the LAST item of the flow (before the FLOW_END_STEP) to notify that the flow is circular with no end/start for prev/next browsing
Definition at line 101 of file ux_flow_engine.h.
| #define INITPIC | ( | x | ) | ((ux_flow_step_init_t) PIC(x)) |
Definition at line 26 of file ux_flow_engine.h.
| #define STEPPIC | ( | x | ) | ((const ux_flow_step_t *) PIC(x)) |
Definition at line 25 of file ux_flow_engine.h.
| #define STEPSPIC | ( | x | ) | ((const ux_flow_step_t *const *) PIC(x)) |
Definition at line 24 of file ux_flow_engine.h.
| #define STRPIC | ( | x | ) | ((const char *) PIC(x)) |
Definition at line 27 of file ux_flow_engine.h.
| #define UX_DEF UX_FLOW |
Definition at line 300 of file ux_flow_engine.h.
| #define UX_FLOW | ( | flow_name, | |
| ... | |||
| ) | const ux_flow_step_t *const flow_name[] = {__VA_ARGS__, FLOW_END_STEP} |
Define a flow as a sequence of given steps.
Definition at line 297 of file ux_flow_engine.h.
| #define UX_FLOW_CALL | ( | flow_name, | |
| code | |||
| ) |
Macro that defines a fake flow of a single step to perform code execution upon validate/error next etc
Definition at line 282 of file ux_flow_engine.h.
| #define UX_FLOW_DEF_INIT UX_STEP_INIT |
Definition at line 161 of file ux_flow_engine.h.
| #define UX_FLOW_DEF_NOCB UX_STEP_NOCB |
Definition at line 240 of file ux_flow_engine.h.
| #define UX_FLOW_DEF_VALID UX_STEP_VALID |
Definition at line 176 of file ux_flow_engine.h.
| #define UX_STEP | ( | stepname, | |
| layoutkind, | |||
| preinit, | |||
| timeout_ms, | |||
| validate_cb, | |||
| error_flow, | |||
| ... | |||
| ) |
Definition at line 129 of file ux_flow_engine.h.
| #define UX_STEP_AFTER_PIN | ( | stepname, | |
| stackslot, | |||
| callback | |||
| ) |
Definition at line 302 of file ux_flow_engine.h.
| #define UX_STEP_CB | ( | stepname, | |
| layoutkind, | |||
| validate_cb, | |||
| ... | |||
| ) |
Define a flow step with a validation callback
Definition at line 166 of file ux_flow_engine.h.
| #define UX_STEP_CB_INIT | ( | stepname, | |
| layoutkind, | |||
| preinit, | |||
| validate_cb, | |||
| ... | |||
| ) |
Define a flow step with a validation callback and a preinit function to render data into shared variable before screen is displayed
Definition at line 196 of file ux_flow_engine.h.
| #define UX_STEP_FLOWCB | ( | stepname, | |
| layoutkind, | |||
| validate_flow, | |||
| error_flow, | |||
| ... | |||
| ) |
Define a flow step with a validation flow and error flow
Definition at line 183 of file ux_flow_engine.h.
| #define UX_STEP_FLOWS | ( | stepname, | |
| layoutkind, | |||
| preinit, | |||
| timeout_ms, | |||
| validate_flow, | |||
| error_flow, | |||
| ... | |||
| ) |
Define a flow step given both its error and validation flow.
Definition at line 114 of file ux_flow_engine.h.
| #define UX_STEP_INIT | ( | stepname, | |
| validate_flow, | |||
| error_flow, | |||
| ... | |||
| ) |
Define a flow step with a specific step init function
Definition at line 148 of file ux_flow_engine.h.
| #define UX_STEP_NOCB | ( | stepname, | |
| layoutkind, | |||
| ... | |||
| ) |
Define a simple flow step, given its name, layout and content.
Definition at line 231 of file ux_flow_engine.h.
| #define UX_STEP_NOCB_INIT | ( | stepname, | |
| layoutkind, | |||
| preinit, | |||
| ... | |||
| ) |
A Step with variant data (which could be overwritten by a flow displayed in an higher flow and therefore need to be recomputed when step is redisplayed)
Definition at line 246 of file ux_flow_engine.h.
| #define UX_STEP_NOCB_POSTINIT | ( | stepname, | |
| layoutkind, | |||
| postinit, | |||
| ... | |||
| ) |
A Step with variant data (which could be overwritten by a flow displayed in an higher flow and therefore need to be recomputed when step is redisplayed)
Definition at line 264 of file ux_flow_engine.h.
| #define UX_STEP_TIMEOUT | ( | stepname, | |
| layoutkind, | |||
| timeout_ms, | |||
| validate_flow, | |||
| ... | |||
| ) |
Define a flow step with autovalidation after a given timeout (in ms)
Definition at line 214 of file ux_flow_engine.h.
| #define UX_STEP_VALID UX_STEP_CB |
Definition at line 178 of file ux_flow_engine.h.
| typedef void(* ux_flow_step_init_t) (unsigned int stack_slot) |
Definition at line 44 of file ux_flow_engine.h.
| typedef struct ux_flow_step_s ux_flow_step_t |
Definition at line 30 of file ux_flow_engine.h.
| enum ux_flow_direction_t |
| Enumerator | |
|---|---|
| FLOW_DIRECTION_BACKWARD | |
| FLOW_DIRECTION_START | |
| FLOW_DIRECTION_FORWARD | |
Definition at line 67 of file ux_flow_engine.h.
| unsigned int ux_flow_button_callback | ( | unsigned int | button_mask, |
| unsigned int | button_mask_counter | ||
| ) |
| ux_flow_direction_t ux_flow_direction | ( | void | ) |
| void ux_flow_error | ( | unsigned int | error | ) |
| const ux_flow_step_t * ux_flow_get_current | ( | void | ) |
| void ux_flow_init | ( | unsigned int | stack_slot, |
| const ux_flow_step_t *const * | steps, | ||
| const ux_flow_step_t *const | start_step | ||
| ) |
| unsigned int ux_flow_is_first | ( | void | ) |
| unsigned int ux_flow_is_last | ( | void | ) |
| void ux_flow_next | ( | void | ) |
| void ux_flow_next_no_display | ( | void | ) |
| void ux_flow_prev | ( | void | ) |
| unsigned int ux_flow_relayout | ( | void | ) |
Return 0 when no relayout occurred.
| void ux_flow_uninit | ( | unsigned int | stack_slot | ) |
Wipe a flow definition from a flow stack slot
| void ux_flow_validate | ( | void | ) |
| const void * ux_stack_get_current_step_params | ( | void | ) |
| const void * ux_stack_get_step_params | ( | unsigned int | stack_slot | ) |