StateMachine TimerTest
{
var int timerID
var string fatalErrorMessage=""
var bool isTimerID_OK
initial state configState
{
entry
{
do log("configState Entry")
set timerID=0
set isTimerID_OK=Timer.arm(timerID, 4.0)
// do trigger()
}
transition if (isTimerID_OK == false) then
{
do log("Unable to create a valid timerID in the firstState")
} select fatalErrorState
transition Timer.timeout(timerID)
select nextState
}
state nextState
{
entry
{
do log("nextState Entry")
// set timerID=10
set isTimerID_OK=Timer.arm(timerID,20.0)
// set timerID=11
// do trigger()
}
transition if (isTimerID_OK == false) then
{
do log("Unable to create a valid timerID in the nextState")
} select fatalErrorState
transition Timer.timeout(timerID)
{
do log("Leaving nextState")
} select finalState
}
state fatalErrorState
{
entry
{
do log("fatalErrorState Entry")
do trigger()
}
transition
select finalState
}
final state finalState
{
}
}
RootMachine TimerTest TimerTest