doc: update/fix FSM charts
These reflect the plan for refactoring, and will be implemented by
I82e3f918295daa83274a4cf803f046979f284366 and
Id7a4407d9b63be05ce63f5f2768b7d7e3d5c86fb
Change-Id: I29e31b753e23a4207662e0e385a337e7df836f45
diff --git a/doc/legend_for_fsm_diagrams.dot b/doc/legend_for_fsm_diagrams.dot
new file mode 100644
index 0000000..732a894
--- /dev/null
+++ b/doc/legend_for_fsm_diagrams.dot
@@ -0,0 +1,24 @@
+digraph G {
+rankdir=TB
+labelloc=t; label="LEGEND FOR FSM GRAPHS"
+
+ box [label="function_call()\nputs FSM into state",shape="box"]
+ STATE [label="FSM_STATE"]
+ STATE2 [label="FSM_STATE"]
+ STATE3 [label="FSM_STATE"]
+ box -> STATE
+ STATE -> STATE2 [label="state transition"]
+ STATE2 -> STATE3
+
+ STATE -> STATE3 [label="transition\non error",style=dashed]
+
+ other [label="other FSM\ninstance\nor remote program",shape=box3d]
+ STATE2 -> other [label="event",style=dotted]
+ other -> STATE2 [label="event",style=dotted]
+
+ terminate [shape=octagon]
+ STATE3 -> terminate
+
+ err [label="common error\ntransition",shape=box,style=dashed]
+ err -> STATE3 [style=dashed]
+}