Embedded SDK
Embedded SDK
Macros
ux_loc_flow_engine.h File Reference
#include "os_seed.h"
#include "os_helpers.h"
#include "ux.h"
Include dependency graph for ux_loc_flow_engine.h:

Go to the source code of this file.

Macros

#define UX_LOC_STEP_FLOWS( stepname, layoutkind, preinit, timeout_ms, validate_flow, error_flow, ...)
 
#define UX_LOC_STEP(stepname, layoutkind, preinit, timeout_ms, validate_cb, error_flow, ...)
 
#define UX_LOC_STEP_CB(stepname, layoutkind, validate_cb, ...)
 
#define UX_LOC_FLOW_DEF_VALID   UX_LOC_STEP_VALID
 
#define UX_LOC_STEP_VALID   UX_LOC_STEP_CB
 
#define UX_LOC_STEP_FLOWCB(stepname, layoutkind, validate_flow, error_flow, ...)
 
#define UX_LOC_STEP_CB_INIT(stepname, layoutkind, preinit, validate_cb, ...)
 
#define UX_LOC_STEP_TIMEOUT(stepname, layoutkind, timeout_ms, validate_flow, ...)
 
#define UX_LOC_STEP_NOCB(stepname, layoutkind, ...)
 
#define UX_FLOW_DEF_NOCB   UX_STEP_NOCB
 
#define UX_LOC_STEP_NOCB_INIT(stepname, layoutkind, preinit, ...)
 
#define UX_LOC_STEP_NOCB_POSTINIT(stepname, layoutkind, postinit, ...)
 
#define UX_LOC_PAGES(stepname, index)
 
#define UX_LOC_PAGES_NOCB   UX_LOC_PAGES
 
#define UX_LOC_PAGES_INIT(stepname, preinit, index)
 
#define UX_LOC_PAGES_INIT_ERROR(stepname, preinit, error, index)
 
#define UX_LOC_PAGES_CB(stepname, validate_cb, index)
 
#define UX_LOC_PAGES_VALID   UX_LOC_PAGES_CB
 
#define UX_LOC_PAGES_CB_INIT(stepname, preinit, validate_cb, index)
 
#define UX_LOC_PAGES_POSTINIT(stepname, postinit, index)
 
#define UX_LOC_PAGES_TIMEOUT(stepname, timeout_ms, validate_cb, index)
 
#define UX_LOC_PAGING(stepname, index)
 
#define UX_PAGES(stepname, text)
 
#define UX_PAGES_INIT(stepname, preinit, text)
 
#define UX_PAGES_CB(stepname, validate_cb, text)
 
#define UX_PAGES_CB_INIT(stepname, preinit, validate_cb, text)
 
#define UX_PAGES_POSTINIT(stepname, postinit, text)
 
#define UX_PAGES_TIMEOUT(stepname, timeout_ms, validate_cb, text)
 
#define UX_PAGES_NOCB   UX_PAGES
 
#define UX_PAGES_VALID   UX_PAGES_CB
 

Macro Definition Documentation

◆ UX_FLOW_DEF_NOCB

#define UX_FLOW_DEF_NOCB   UX_STEP_NOCB

Definition at line 136 of file ux_loc_flow_engine.h.

◆ UX_LOC_FLOW_DEF_VALID

#define UX_LOC_FLOW_DEF_VALID   UX_LOC_STEP_VALID

Definition at line 72 of file ux_loc_flow_engine.h.

◆ UX_LOC_PAGES

#define UX_LOC_PAGES (   stepname,
  index 
)
Value:
const ux_loc_layout_params_t stepname##_val = {index}; \
const ux_flow_step_t stepname = { \
ux_layout_pages_init, \
&stepname##_val, \
NULL, \
NULL, \
}

Definition at line 176 of file ux_loc_flow_engine.h.

◆ UX_LOC_PAGES_CB

#define UX_LOC_PAGES_CB (   stepname,
  validate_cb,
  index 
)
Value:
UX_FLOW_CALL(stepname##_validate, { validate_cb; }) \
const ux_loc_layout_params_t stepname##_val = {index}; \
const ux_flow_step_t stepname = { \
ux_layout_pages_init, \
&stepname##_val, \
stepname##_validate, \
NULL, \
}
#define UX_FLOW_CALL(flow_name, code)

Definition at line 214 of file ux_loc_flow_engine.h.

◆ UX_LOC_PAGES_CB_INIT

#define UX_LOC_PAGES_CB_INIT (   stepname,
  preinit,
  validate_cb,
  index 
)
Value:
UX_FLOW_CALL(stepname##_validate, { validate_cb; }) \
void stepname##_init(unsigned int stack_slot) \
{ \
preinit; \
ux_layout_pages_init(stack_slot); \
} \
const ux_loc_layout_params_t stepname##_val = {index}; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
stepname##_validate, \
NULL, \
}

Definition at line 226 of file ux_loc_flow_engine.h.

◆ UX_LOC_PAGES_INIT

#define UX_LOC_PAGES_INIT (   stepname,
  preinit,
  index 
)
Value:
void stepname##_init(unsigned int stack_slot) \
{ \
preinit; \
ux_layout_pages_init(stack_slot); \
} \
const ux_loc_layout_params_t stepname##_val = {index}; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
NULL, \
NULL, \
}

Definition at line 186 of file ux_loc_flow_engine.h.

◆ UX_LOC_PAGES_INIT_ERROR

#define UX_LOC_PAGES_INIT_ERROR (   stepname,
  preinit,
  error,
  index 
)
Value:
void stepname##_init(unsigned int stack_slot) \
{ \
preinit; \
ux_layout_pages_init(stack_slot); \
} \
const ux_loc_layout_params_t stepname##_val = {index}; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
NULL, \
error, \
}

Definition at line 200 of file ux_loc_flow_engine.h.

◆ UX_LOC_PAGES_NOCB

#define UX_LOC_PAGES_NOCB   UX_LOC_PAGES

Definition at line 184 of file ux_loc_flow_engine.h.

◆ UX_LOC_PAGES_POSTINIT

#define UX_LOC_PAGES_POSTINIT (   stepname,
  postinit,
  index 
)
Value:
void stepname##_init(unsigned int stack_slot) \
{ \
ux_layout_pages_init(stack_slot); \
postinit; \
} \
const ux_loc_layout_params_t stepname##_val = {index}; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
NULL, \
NULL, \
}

Definition at line 241 of file ux_loc_flow_engine.h.

◆ UX_LOC_PAGES_TIMEOUT

#define UX_LOC_PAGES_TIMEOUT (   stepname,
  timeout_ms,
  validate_cb,
  index 
)
Value:
void stepname##_init(unsigned int stack_slot) \
{ \
ux_layout_pages_init(stack_slot); \
ux_layout_set_timeout(stack_slot, timeout_ms); \
} \
const ux_loc_layout_params_t stepname##_val = {index}; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
validate_cb, \
NULL, \
}

Definition at line 255 of file ux_loc_flow_engine.h.

◆ UX_LOC_PAGES_VALID

#define UX_LOC_PAGES_VALID   UX_LOC_PAGES_CB

Definition at line 224 of file ux_loc_flow_engine.h.

◆ UX_LOC_PAGING

#define UX_LOC_PAGING (   stepname,
  index 
)
Value:
const ux_loc_layout_params_t stepname##_val = {index}; \
const ux_flow_step_t stepname = { \
ux_loc_layout_paging_init, \
&stepname##_val, \
NULL, \
NULL, \
}

Definition at line 272 of file ux_loc_flow_engine.h.

◆ UX_LOC_STEP

#define UX_LOC_STEP (   stepname,
  layoutkind,
  preinit,
  timeout_ms,
  validate_cb,
  error_flow,
  ... 
)
Value:
UX_FLOW_CALL(stepname##_validate, { validate_cb; }) \
void stepname##_init(unsigned int stack_slot) \
{ \
preinit; \
ux_layout_##layoutkind##_init(stack_slot); \
ux_layout_set_timeout(stack_slot, timeout_ms); \
} \
const ux_loc_layout_##layoutkind##_params_t stepname##_val = __VA_ARGS__; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
stepname##_validate, \
error_flow, \
}

Definition at line 43 of file ux_loc_flow_engine.h.

◆ UX_LOC_STEP_CB

#define UX_LOC_STEP_CB (   stepname,
  layoutkind,
  validate_cb,
  ... 
)
Value:
UX_FLOW_CALL(stepname##_validate, { validate_cb; }) \
const ux_loc_layout_##layoutkind##_params_t stepname##_val = __VA_ARGS__; \
const ux_flow_step_t stepname = { \
ux_layout_##layoutkind##_init, \
&stepname##_val, \
stepname##_validate, \
NULL, \
}

Define a flow step with a validation callback

Definition at line 62 of file ux_loc_flow_engine.h.

◆ UX_LOC_STEP_CB_INIT

#define UX_LOC_STEP_CB_INIT (   stepname,
  layoutkind,
  preinit,
  validate_cb,
  ... 
)
Value:
UX_FLOW_CALL(stepname##_validate, { validate_cb; }) \
void stepname##_init(unsigned int stack_slot) \
{ \
preinit; \
ux_layout_##layoutkind##_init(stack_slot); \
} \
const ux_loc_layout_##layoutkind##_params_t stepname##_val = __VA_ARGS__; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
stepname##_validate, \
NULL, \
}

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 92 of file ux_loc_flow_engine.h.

◆ UX_LOC_STEP_FLOWCB

#define UX_LOC_STEP_FLOWCB (   stepname,
  layoutkind,
  validate_flow,
  error_flow,
  ... 
)
Value:
const ux_loc_layout_##layoutkind##_params_t stepname##_val = __VA_ARGS__; \
const ux_flow_step_t stepname = { \
ux_layout_##layoutkind##_init, \
&stepname##_val, \
validate_flow, \
error_flow, \
}

Define a flow step with a validation flow and error flow

Definition at line 79 of file ux_loc_flow_engine.h.

◆ UX_LOC_STEP_FLOWS

#define UX_LOC_STEP_FLOWS (   stepname,
  layoutkind,
  preinit,
  timeout_ms,
  validate_flow,
  error_flow,
  ... 
)
Value:
void stepname##_init(unsigned int stack_slot) \
{ \
preinit; \
ux_layout_##layoutkind##_init(stack_slot); \
ux_layout_set_timeout(stack_slot, timeout_ms); \
} \
const ux_loc_layout_##layoutkind##_params_t stepname##_val = __VA_ARGS__; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
validate_flow, \
error_flow, \
}

Define a flow step given both its error and validation flow.

Definition at line 27 of file ux_loc_flow_engine.h.

◆ UX_LOC_STEP_NOCB

#define UX_LOC_STEP_NOCB (   stepname,
  layoutkind,
  ... 
)
Value:
const ux_loc_layout_##layoutkind##_params_t stepname##_val = __VA_ARGS__; \
const ux_flow_step_t stepname = { \
ux_layout_##layoutkind##_init, \
&stepname##_val, \
NULL, \
NULL, \
}

Define a simple flow step, given its name, layout and content.

Definition at line 127 of file ux_loc_flow_engine.h.

◆ UX_LOC_STEP_NOCB_INIT

#define UX_LOC_STEP_NOCB_INIT (   stepname,
  layoutkind,
  preinit,
  ... 
)
Value:
void stepname##_init(unsigned int stack_slot) \
{ \
preinit; \
ux_layout_##layoutkind##_init(stack_slot); \
} \
const ux_loc_layout_##layoutkind##_params_t stepname##_val = __VA_ARGS__; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
NULL, \
NULL, \
}

A Step with variant data (which could be overwritten by a flow idplsayed in an higher flow and therefore need to be recomputed when step is redisplayed)

Definition at line 142 of file ux_loc_flow_engine.h.

◆ UX_LOC_STEP_NOCB_POSTINIT

#define UX_LOC_STEP_NOCB_POSTINIT (   stepname,
  layoutkind,
  postinit,
  ... 
)
Value:
void stepname##_init(unsigned int stack_slot) \
{ \
ux_layout_##layoutkind##_init(stack_slot); \
postinit; \
} \
const ux_loc_layout_##layoutkind##_params_t stepname##_val = __VA_ARGS__; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
NULL, \
NULL, \
}

A Step with variant data (which could be overwritten by a flow idplsayed in an higher flow and therefore need to be recomputed when step is redisplayed)

Definition at line 160 of file ux_loc_flow_engine.h.

◆ UX_LOC_STEP_TIMEOUT

#define UX_LOC_STEP_TIMEOUT (   stepname,
  layoutkind,
  timeout_ms,
  validate_flow,
  ... 
)
Value:
void stepname##_init(unsigned int stack_slot) \
{ \
ux_layout_##layoutkind##_init(stack_slot); \
ux_layout_set_timeout(stack_slot, timeout_ms); \
} \
const ux_loc_layout_##layoutkind##_params_t stepname##_val = __VA_ARGS__; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
validate_flow, \
NULL, \
}

Define a flow step with autovalidation after a given timeout (in ms)

Definition at line 110 of file ux_loc_flow_engine.h.

◆ UX_LOC_STEP_VALID

#define UX_LOC_STEP_VALID   UX_LOC_STEP_CB

Definition at line 74 of file ux_loc_flow_engine.h.

◆ UX_PAGES

#define UX_PAGES (   stepname,
  text 
)
Value:
const ux_layout_pages_params_t stepname##_val = {text}; \
const ux_flow_step_t stepname = { \
ux_layout_pages_init, \
&stepname##_val, \
NULL, \
NULL, \
}

Definition at line 283 of file ux_loc_flow_engine.h.

◆ UX_PAGES_CB

#define UX_PAGES_CB (   stepname,
  validate_cb,
  text 
)
Value:
UX_FLOW_CALL(stepname##_validate, { validate_cb; }) \
const ux_layout_pages_params_t stepname##_val = {text}; \
const ux_flow_step_t stepname = { \
ux_layout_pages_init, \
&stepname##_val, \
stepname##_validate, \
NULL, \
}

Definition at line 306 of file ux_loc_flow_engine.h.

◆ UX_PAGES_CB_INIT

#define UX_PAGES_CB_INIT (   stepname,
  preinit,
  validate_cb,
  text 
)
Value:
UX_FLOW_CALL(stepname##_validate, { validate_cb; }) \
void stepname##_init(unsigned int stack_slot) \
{ \
preinit; \
ux_layout_pages_init(stack_slot); \
} \
const ux_layout_pages_params_t stepname##_val = {text}; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
stepname##_validate, \
NULL, \
}

Definition at line 316 of file ux_loc_flow_engine.h.

◆ UX_PAGES_INIT

#define UX_PAGES_INIT (   stepname,
  preinit,
  text 
)
Value:
void stepname##_init(unsigned int stack_slot) \
{ \
preinit; \
ux_layout_pages_init(stack_slot); \
} \
const ux_layout_pages_params_t stepname##_val = {text}; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
NULL, \
NULL, \
}

Definition at line 292 of file ux_loc_flow_engine.h.

◆ UX_PAGES_NOCB

#define UX_PAGES_NOCB   UX_PAGES

Definition at line 359 of file ux_loc_flow_engine.h.

◆ UX_PAGES_POSTINIT

#define UX_PAGES_POSTINIT (   stepname,
  postinit,
  text 
)
Value:
void stepname##_init(unsigned int stack_slot) \
{ \
ux_layout_pages_init(stack_slot); \
postinit; \
} \
const ux_layout_pages_params_t stepname##_val = {text}; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
NULL, \
NULL, \
}

Definition at line 331 of file ux_loc_flow_engine.h.

◆ UX_PAGES_TIMEOUT

#define UX_PAGES_TIMEOUT (   stepname,
  timeout_ms,
  validate_cb,
  text 
)
Value:
void stepname##_init(unsigned int stack_slot) \
{ \
ux_layout_pages_init(stack_slot); \
ux_layout_set_timeout(stack_slot, timeout_ms); \
} \
const ux_layout_pages_params_t stepname##_val = {text}; \
const ux_flow_step_t stepname = { \
stepname##_init, \
&stepname##_val, \
validate_cb, \
NULL, \
}

Definition at line 345 of file ux_loc_flow_engine.h.

◆ UX_PAGES_VALID

#define UX_PAGES_VALID   UX_PAGES_CB

Definition at line 362 of file ux_loc_flow_engine.h.