RKH
|
Configuration options related to state machine behaviors. More...
Macros | |
#define | RKH_CFG_SMA_ENT_ARG_SMA_EN RKH_ENABLED |
If the RKH_CFG_SMA_ENT_ARG_SMA_EN is set to 1 then the entry action prototype will add as argument a pointer to state machine structure RKH_SMA_T. See RKH_ENT_ACT_T definition. More... | |
#define | RKH_CFG_SMA_ENT_ARG_STATE_EN RKH_DISABLED |
If the RKH_CFG_SMA_ENT_ARG_STATE_EN is set to 1 then the entry action prototype will add as argument a pointer to "this" state structure RKH_ST_T. See RKH_ENT_ACT_T definition. More... | |
#define | RKH_CFG_SMA_EXT_ARG_SMA_EN RKH_ENABLED |
If the RKH_CFG_SMA_EXT_ARG_SMA_EN is set to 1 then the exit action prototype will add as argument a pointer to state machine structure RKH_SMA_T. See RKH_EXT_ACT_T definition. More... | |
#define | RKH_CFG_SMA_EXT_ARG_STATE_EN RKH_DISABLED |
If the RKH_CFG_SMA_EXT_ARG_STATE_EN is set to 1 then the exit action prototype will add as argument a pointer to "this" state structure RKH_ST_T. See RKH_EXT_ACT_T definition. More... | |
#define | RKH_CFG_SMA_ACT_ARG_SMA_EN RKH_ENABLED |
If the RKH_CFG_SMA_ACT_ARG_SMA_EN is set to 1 then the transition action prototype will add as argument a pointer to state machine structure RKH_SMA_T. See RKH_TRN_ACT_T definition. More... | |
#define | RKH_CFG_SMA_ACT_ARG_EVT_EN RKH_ENABLED |
If the RKH_CFG_SMA_ACT_ARG_EVT_EN is set to 1 then the transition action prototype will add as argument a pointer to ocurred event. See RKH_TRN_ACT_T definition. More... | |
#define | RKH_CFG_SMA_GRD_ARG_EVT_EN RKH_ENABLED |
If the RKH_CFG_SMA_GRD_ARG_EVT_EN is set to 1 then the transition guard prototype will add as argument a pointer to ocurred event. See RKH_GUARD_T definition. More... | |
#define | RKH_CFG_SMA_GRD_ARG_SMA_EN RKH_ENABLED |
If the RKH_CFG_SMA_GRD_ARG_SMA_EN is set to 1 then the transition guard prototype will add as argument a pointer to state machine structure RKH_SMA_T. See RKH_GUARD_T definition. More... | |
#define | RKH_CFG_SMA_PPRO_ARG_SMA_EN RKH_ENABLED |
If the RKH_CFG_SMA_PPRO_ARG_SMA_EN is set to 1 then the event preprocessor (Moore function like entry and exit actions) prototype will add as argument a pointer to state machine structure RKH_SMA_T. See RKH_PPRO_T definition. More... | |
#define | RKH_CFG_SMA_SM_CONST_EN RKH_ENABLED |
If RKH_CFG_SMA_SM_CONST_EN is set to RKH_ENABLED then much of the state machine object is allocated in ROM. This approach does have as key benefit the little RAM consuming as compared when RKH_CFG_SMA_SM_CONST_EN is set to RKH_DISABLED. Nevertheless, the primary drawback of this approach is the obfuscated API to use it. In constrast, if RKH_CFG_SMA_SM_CONST_EN is set to RKH_ENABLED then the whole state machine object is allocated in RAM, including its own constant part. However, the API to use it is very simple, intuitive, and flexible, allowing easily the dynamic memory allocation. More... | |
#define | RKH_CFG_SMA_RT_CTOR_EN RKH_DISABLED |
If RKH_CFG_SMA_RT_CTOR_EN is set to RKH_ENABLED then is allowed the use of run-time constructors of RKH_SM_T and RKH_SMA_T classes, rkh_sm_ctor() and rkh_sma_ctor() respectively. More... | |
#define | RKH_CFG_SMA_VFUNCT_EN RKH_DISABLED |
If RKH_CFG_SMA_VFUNCT_EN is set to RKH_ENABLED, the active objects are defined as polymorphics, since it incorporates a virtual table of functions. See the default virtual table rkhSmaVtbl to known the available polymorphic operations. More... | |
#define | RKH_CFG_SMA_ORTHREG_EN RKH_DISABLED |
If RKH_CFG_SMA_ORTHREG_EN is set to RKH_ENABLED, the state machine functions are reentrant, therefore it could be used as workaround to easily emulates a state machine or composite state with orthogonal regions, for example, dispatching the same event to multiple state machines (regions) at the same time. More... | |
Configuration options related to state machine behaviors.
#define RKH_CFG_SMA_ENT_ARG_SMA_EN RKH_ENABLED |
If the RKH_CFG_SMA_ENT_ARG_SMA_EN is set to 1 then the entry action prototype will add as argument a pointer to state machine structure RKH_SMA_T. See RKH_ENT_ACT_T definition.
#define RKH_CFG_SMA_ENT_ARG_STATE_EN RKH_DISABLED |
If the RKH_CFG_SMA_ENT_ARG_STATE_EN is set to 1 then the entry action prototype will add as argument a pointer to "this" state structure RKH_ST_T. See RKH_ENT_ACT_T definition.
#define RKH_CFG_SMA_EXT_ARG_SMA_EN RKH_ENABLED |
If the RKH_CFG_SMA_EXT_ARG_SMA_EN is set to 1 then the exit action prototype will add as argument a pointer to state machine structure RKH_SMA_T. See RKH_EXT_ACT_T definition.
#define RKH_CFG_SMA_EXT_ARG_STATE_EN RKH_DISABLED |
If the RKH_CFG_SMA_EXT_ARG_STATE_EN is set to 1 then the exit action prototype will add as argument a pointer to "this" state structure RKH_ST_T. See RKH_EXT_ACT_T definition.
#define RKH_CFG_SMA_ACT_ARG_SMA_EN RKH_ENABLED |
If the RKH_CFG_SMA_ACT_ARG_SMA_EN is set to 1 then the transition action prototype will add as argument a pointer to state machine structure RKH_SMA_T. See RKH_TRN_ACT_T definition.
#define RKH_CFG_SMA_ACT_ARG_EVT_EN RKH_ENABLED |
If the RKH_CFG_SMA_ACT_ARG_EVT_EN is set to 1 then the transition action prototype will add as argument a pointer to ocurred event. See RKH_TRN_ACT_T definition.
#define RKH_CFG_SMA_GRD_ARG_EVT_EN RKH_ENABLED |
If the RKH_CFG_SMA_GRD_ARG_EVT_EN is set to 1 then the transition guard prototype will add as argument a pointer to ocurred event. See RKH_GUARD_T definition.
#define RKH_CFG_SMA_GRD_ARG_SMA_EN RKH_ENABLED |
If the RKH_CFG_SMA_GRD_ARG_SMA_EN is set to 1 then the transition guard prototype will add as argument a pointer to state machine structure RKH_SMA_T. See RKH_GUARD_T definition.
#define RKH_CFG_SMA_PPRO_ARG_SMA_EN RKH_ENABLED |
If the RKH_CFG_SMA_PPRO_ARG_SMA_EN is set to 1 then the event preprocessor (Moore function like entry and exit actions) prototype will add as argument a pointer to state machine structure RKH_SMA_T. See RKH_PPRO_T definition.
#define RKH_CFG_SMA_SM_CONST_EN RKH_ENABLED |
If RKH_CFG_SMA_SM_CONST_EN is set to RKH_ENABLED then much of the state machine object is allocated in ROM. This approach does have as key benefit the little RAM consuming as compared when RKH_CFG_SMA_SM_CONST_EN is set to RKH_DISABLED. Nevertheless, the primary drawback of this approach is the obfuscated API to use it. In constrast, if RKH_CFG_SMA_SM_CONST_EN is set to RKH_ENABLED then the whole state machine object is allocated in RAM, including its own constant part. However, the API to use it is very simple, intuitive, and flexible, allowing easily the dynamic memory allocation.
#define RKH_CFG_SMA_RT_CTOR_EN RKH_DISABLED |
If RKH_CFG_SMA_RT_CTOR_EN is set to RKH_ENABLED then is allowed the use of run-time constructors of RKH_SM_T and RKH_SMA_T classes, rkh_sm_ctor() and rkh_sma_ctor() respectively.
#define RKH_CFG_SMA_VFUNCT_EN RKH_DISABLED |
If RKH_CFG_SMA_VFUNCT_EN is set to RKH_ENABLED, the active objects are defined as polymorphics, since it incorporates a virtual table of functions. See the default virtual table rkhSmaVtbl to known the available polymorphic operations.
#define RKH_CFG_SMA_ORTHREG_EN RKH_DISABLED |
If RKH_CFG_SMA_ORTHREG_EN is set to RKH_ENABLED, the state machine functions are reentrant, therefore it could be used as workaround to easily emulates a state machine or composite state with orthogonal regions, for example, dispatching the same event to multiple state machines (regions) at the same time.