QT State Machine Framework: presentazione ed utilizzo in un sistema embedded

Il framework State Machine usato dalle QT fa uso del concetto di macchina a stati finiti gerarchica: come conseguenza di qualche ingresso, la macchina effettua una transizione da uno stato all’altro. Ogni stato può avere stati figli ricorsivamente: se un sottostato non gestisce una transizione, la può gestire il padre.
Vi è poi la possibilità di definire stati che consentono di memorizzare lo stato in cui si era in precedenza per poterlo ripristinare. Infine ad ogni stato può essere assegnato il valore che assume una proprietà di un oggetto figlio di un QObject: quando la macchina entra in tale stato l’oggetto assume il valore in questione seguendo una QPropertyAnimation.

Una transizione tra stati è definita con lo stato di partenza, lo stato di arrivo, l’emettitore del segnale e il segnale stesso. L’emettitore può essere un qualunque figlio di QObject e ciò rende l'evoluzione tra stati molto flessibile.

Nel talk verrà presentato l'utilizzo del framework nel firmware di un dispositivo elettromedicale funzionante con Linux Embedded mostrando come possono essere sfruttate le caratteristiche che offre.

Edizione 2013 nella track Track1.