pdq c++ uml state machines
DESCRIPTION
What Uml state machines are, how they work, and how to operate them.TRANSCRIPT
PDQ C
++ UML S
TATE
MACHINES
CO
MP
LE
TE
L Y S
PE
CI F
Y T
HE
DY
NA
MI C
BE
HA
VI O
R O
F Y
OU
R
AP
PL
I CA
TI O
NS
WHAT ARE STATE MACHINES?
State machines are the description of a thing's lifeline. They describe the different stages of the lifeline, the events influencing it, and what it does when a particular event is detected at a particular stage. They offer the complete specification of the dynamic behavior of the thing.
MOTIVATION
Provable Programs
Minimal Code
Small Executable
Easy integration with inotify
Component style object files
Little syntactic noise as possible
Faster Execution Time
Reduce dependencies
Maintainable and fairly easy to work on
Nice for embedded Linux system
Easy deploy against common boxes in cloud
STATE MACHINE, STATE, TRANSITION, EVENT
THIS IS C++ CODE … REALLY THIS IS THE PROGRAM
BOOST_MSM_EUML_TRANSITION_TABLE((
Playing == Stopped + play [some_guard] / (some_action , start_playback) ,
Open == Stopped + open_close/ open_drawer ,
Stopped == Stopped + stop ,
Empty == Open + open_close / close_drawer ,
Open == Empty + open_close / open_drawer ,
Stopped == Empty + cd_detected [good_disk_format] / store_cd_info),transition_table)
OKAY SO THERE IS MORE TO DO LETS TAKE A LOOK
Link to State File
Link to Events
Link to Finite State Machine
Link to Actions
Link to Transition
Link to inotify
Link to main
Link to Makefile