FW Profile - C1 Implementation
SmPState_t Struct Reference

Structure representing a proper state in state machine. More...

Data Fields

FwSmCounterS1_t outTransIndex
 index of first out-going transition in the transition array of SmBaseDesc_t
 
FwSmCounterS1_t nOfOutTrans
 number of outgoing transitions
 
FwSmCounterS1_t iEntryAction
 the entry action for the state
 
FwSmCounterS1_t iDoAction
 the do action for the state
 
FwSmCounterS1_t iExitAction
 the exit action for the state
 

Detailed Description

Structure representing a proper state in state machine.

A proper state is characterized by:

  • the set of out-going transitions from the state
  • the state machine embedded in the state
  • the entry action for the state
  • the do-action for the state
  • the exit action for the state

The first item - the set of out-going transitions from the state - is defined as follows. Transitions which originate from the same state are located in adjacent locations in the transition array of the base descriptor (see SmBaseDesc_t). Field outTransIndex identifies the first location of this set of adjacent locations. Thus, for instance, if a state has 3 out-going transitions and if its outTransIndex field has value 4, then the three out-going transitions are located in elements 4, 5 and 6 of the array of transitions.

The state actions are integers which identify locations in the action array of the state machine descriptor where the action is stored. Thus, for instance, if the iEntryAction field for state S is equal to 5, then the entry action of state S is the one stored at location 5 of the action array of that state machine. If an action is not defined, a value of zero is used to point to the first location of the action array where the dummy action SmDummyAction is stored which returns without doing anything.

By convention, the implementation treats a state as uninitialized if its outTransIndex field is equal to zero.

Definition at line 121 of file FwSmPrivate.h.


The documentation for this struct was generated from the following file:
P&P Software GmbH, Copyright 2011, All Rights Reserved