oosmos
Version:
A Hierarchical State Machine Class
32 lines (28 loc) • 648 B
text/typescript
import { StateMachine } from '../OOSMOS';
class TimeoutTest extends StateMachine {
constructor() {
super({ DEFAULT: 'A',
A: {
ENTER() {
this.Print("In state A");
this.SetTimeoutSeconds(4);
},
TIMEOUT() {
this.Transition('B');
},
},
B: {
ENTER() {
this.Print("In state B");
this.SetTimeoutSeconds(1);
},
TIMEOUT() {
this.Transition('A');
},
},
});
}
}
const pTimeoutTest = new TimeoutTest();
pTimeoutTest.SetDebug(true, 'debugFSM');
pTimeoutTest.Start();