ABSTRACT

The purpose of this chapter is to familiarize the reader with an example of a real-world library for making families of communication protocols. The main argument against it may be that there are too few C++ classes with too many function members. Alternately, this disadvantage is a tradeoff for a rather simple API, which is quite easy to learn and use. The relationship between the classes FSM System and Finite State Machine is symbiosis—one cannot operate without the other. The FSM system clearly represents an infrastructure, or an unused platform. In reality, an FSM system is always used so that at least a couple of finite state machines are registered to it, together representing a group of finite state machines. The FSMSystem Library is written in C++ using an object-oriented approach. The basic components are written as C++ classes that provide functionality of both individual finite state machines and a group of finite state machines.