13. RAFCON API: The rafcon package

RAFCON completely separates the GUI from the core, allowing state machines to be created, stored, loaded and started without having any user interface but the console.

This core of RAFCON resides in the rafcon.core sub-module. It includes classes for all types of states, a state-machine class and many more.

The rafcon.gui sub-module contains all parts needed for the GUI using GTK. It uses the Model-View-Controller-architecture (MVC).

A tutorial on how to start the core in a minimal example with a python script is given in Starting a minimal RAFCON core (RAFCON API).

Finally, rafcon.utils hold several helping modules, for example for logging.