...The structure and implementation of this library focuses on the application of finite state machines to real-time control loops, but can be reasonably adapted for virtually any other application, even completely unrelated to control systems. An emphasis has been placed on having very low overhead so as not to hurt overall system performance no matter where this library is used, while still maintaining ease of use. Code size has also been kept to a minimum.
Aside from implementing standard finite state machines and multi-action planning state machines, this library can also be used to implement hierarchical state controllers, or any hybrid of the three. ...