Order of Function Calls

In SMACC States, the four standard function calls are…

  • staticConfigure()
  • runtimeConfigure()
  • onEntry()
  • update()* – Must be added explicitly
  • onExit()

In the client behaviors, the four standard function calls are..

  • runtimeConfigure()
  • onEntry()
  • update()* – Must be added explicitly
  • onExit()

So, lets assume that we have a state machine (SmExample) with two orthogonals (OrOne & OrTwo), in state StOne, with one client, and one client behavior in each orthogonal (ClOne, ClTwo, CbOne, CbTwo).

From the state StOne, the order of the function calls would be…

  • StOne – staticConfigure()
  • StOne – runtimeConfigure()
  • CbOne – runtimeConfigure()
  • CbTwo – runtimeConfigure()
  • StOne – onEntry()
  • CbOne – onEntry()
  • CbTwo – onEntry()
  • CbOne – update()*
  • CbTwo – update()*
  • StOne – update()*
  • CbOne – onExit()
  • CbTwo – onExit()
  • StOne – onExit()