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 1 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 | ) |