|
|
An Fsm may be either hardware or software devices. A hardware Fsm may be called for when the `program' is fixed and maximum processing speed is essential: consider using an Fsm to convert between two standard communication protocols in real time. When flexibility is more important than speed, however, an Fsm may be constructed in software. The `program' of a software Fsm can be defined--and even redefined--at runtime.
This tutorial is concerned with software Fsm issues. It illustrates, by means of four complete examples, a C++ library component named Fsm(C++) specifically designed to allow programmers to define and use a simple Fsm in C++ programs.