Franz Pucher / HIM0Board

You are viewing an older revision! See the latest version

Zustandsdiagramm

Inhalt

Ein Zustandsdiagramm (auch Zustandsmaschine, State Machine Diagram - kurz STM, Zustandsautomat, genannt) ist ein Graph mit Zuständen als Knoten und Zustandsübergängen als Kanten, die durch Ereignisse (Events) ausgelöst werden. In der Objektorientierung handelt es sich normalerweise um die Zustände eines Objekts einer gewissen Klasse.


Bulme PE Coding Style (siehe auch State Machine Design in C++:

  • Zustände (states) werden als Konstante oder Aufzählungstypen (enumerations) definiert.
  • Namen der Zustande (states) werden groß geschrieben und für eine eindeutige Zuordnung zur State Machine (STM) ein "ST_" vorangestellt (Präfix).

// Constants
const int ST_IDLE = 0;
const int ST_NEXT = 1;
// Declaration of variable state
uint8_t state;

oder mit enum:

// Enumerations
enum nextstate {ST_IDLE=0, ST_NEXT};
// Declaration of variable state 
newState state;

oder mit enum mit Type aliases (typedef)

// Enumerations with typedef
typedef enum {ST_IDLE=0, ST_NEXT} nextstate;
// Declaration of variable state
newState state;

All wikipages