107 lines
7.6 KiB
TeX
107 lines
7.6 KiB
TeX
\doxysection{src/fsm/dispatch.c File Reference}
|
|
\hypertarget{fsm_2dispatch_8c}{}\label{fsm_2dispatch_8c}\index{src/fsm/dispatch.c@{src/fsm/dispatch.c}}
|
|
|
|
|
|
This Finite State Machine (fsm) describes all the possible states of the Gem-\/graph client and all the transitions between these states.
|
|
|
|
|
|
{\ttfamily \#include $<$stdbool.\+h$>$}\newline
|
|
{\ttfamily \#include "{}../../include/fsm.\+h"{}}\newline
|
|
{\ttfamily \#include "{}../../include/util.\+h"{}}\newline
|
|
{\ttfamily \#include "{}../../include/widget.\+h"{}}\newline
|
|
\doxysubsubsection*{Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
void \mbox{\hyperlink{fsm_2dispatch_8c_a435d1a5171a7d69662d701234722fee2}{fsm\+\_\+journal\+\_\+publication\+\_\+request}} ()
|
|
\item
|
|
void \mbox{\hyperlink{fsm_2dispatch_8c_a8c67f42f95d48ee2469c9a27d65db3e6}{fsm\+\_\+journal\+\_\+event}} (int severity, int source, const char \texorpdfstring{$\ast$}{*}file\+\_\+source, const char \texorpdfstring{$\ast$}{*}function\+\_\+source, const char \texorpdfstring{$\ast$}{*}string\+\_\+value)
|
|
\item
|
|
void \mbox{\hyperlink{fsm_2dispatch_8c_a8d91f5868f20ad3b72cfa63787d87444}{fsm\+\_\+init}} (char \texorpdfstring{$\ast$}{*}initial\+\_\+message\+\_\+from\+\_\+main)
|
|
\item
|
|
void \mbox{\hyperlink{fsm_2dispatch_8c_a770bcaeb0bd6f81cddcc3cd506468fff}{fsm\+\_\+set\+\_\+preferences\+\_\+modified}} (bool value)
|
|
\item
|
|
bool \mbox{\hyperlink{fsm_2dispatch_8c_a0b0231a311d0e85723ef9fcf38be88e3}{fsm\+\_\+get\+\_\+preferences\+\_\+state}} ()
|
|
\item
|
|
\Hypertarget{fsm_2dispatch_8c_a9123915ffd10fe1ae18254898b1c0ebf}\label{fsm_2dispatch_8c_a9123915ffd10fe1ae18254898b1c0ebf}
|
|
int {\bfseries fsm\+\_\+get\+\_\+exec\+\_\+edit} ()
|
|
\item
|
|
\Hypertarget{fsm_2dispatch_8c_a90ab14081a88752d3721947a4922ee25}\label{fsm_2dispatch_8c_a90ab14081a88752d3721947a4922ee25}
|
|
int {\bfseries fsm\+\_\+get\+\_\+state\+\_\+rules\+\_\+data} ()
|
|
\item
|
|
void \mbox{\hyperlink{fsm_2dispatch_8c_ae921ecd39af67bb8dc0deb2cdc86125d}{fsm\+\_\+set\+\_\+exec\+\_\+edit}} (int choice)
|
|
\item
|
|
void \mbox{\hyperlink{fsm_2dispatch_8c_af5a464b19589ba1972c9b3aa3397945a}{fsm\+\_\+set\+\_\+state\+\_\+rules\+\_\+data}} (int choice)
|
|
\end{DoxyCompactItemize}
|
|
|
|
|
|
\doxysubsection{Detailed Description}
|
|
This Finite State Machine (fsm) describes all the possible states of the Gem-\/graph client and all the transitions between these states.
|
|
|
|
|
|
\begin{DoxyItemize}
|
|
\item OOOOOOOOOOO OOOOO OOO OOO \texorpdfstring{$\ast$}{*} OO OO OO OOOO OOOO \texorpdfstring{$\ast$}{*} OO OO OO OO OO OO \texorpdfstring{$\ast$}{*} OOOOOO OO OO OO OO OO \texorpdfstring{$\ast$}{*} OO OO OO OOO OO \texorpdfstring{$\ast$}{*} OO OO OO OO \texorpdfstring{$\ast$}{*} OO OO OOO OO OO \texorpdfstring{$\ast$}{*} OO OOOOOO OO OO \texorpdfstring{$\ast$}{*}
|
|
\begin{DoxyItemize}
|
|
\item
|
|
\end{DoxyItemize}
|
|
\end{DoxyItemize}
|
|
|
|
@detailed gem-\/graph-\/client fsm (Finite State Machine) manages the four topics\+:
|
|
\begin{DoxyItemize}
|
|
\item engine (window appearance)
|
|
\item measures (current measurements)
|
|
\item results (current data acquisition and displays)
|
|
\item preferences (current user preferences)
|
|
|
|
Each state of the finite state machine (fsm) must be
|
|
\begin{DoxyItemize}
|
|
\item saved at the end of a work session and
|
|
\item reread (available) at the start of a new session.
|
|
\end{DoxyItemize}
|
|
|
|
No state of the fsm should be defined in another module. No fsm transition needs to be executed in another module.
|
|
\end{DoxyItemize}
|
|
|
|
\doxysubsection{Function Documentation}
|
|
\Hypertarget{fsm_2dispatch_8c_a0b0231a311d0e85723ef9fcf38be88e3}\label{fsm_2dispatch_8c_a0b0231a311d0e85723ef9fcf38be88e3}
|
|
\index{dispatch.c@{dispatch.c}!fsm\_get\_preferences\_state@{fsm\_get\_preferences\_state}}
|
|
\index{fsm\_get\_preferences\_state@{fsm\_get\_preferences\_state}!dispatch.c@{dispatch.c}}
|
|
\doxysubsubsection{\texorpdfstring{fsm\_get\_preferences\_state()}{fsm\_get\_preferences\_state()}}
|
|
{\footnotesize\ttfamily bool fsm\+\_\+get\+\_\+preferences\+\_\+state (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
|
|
|
phantom documentation used to test the functioning of doxygen \Hypertarget{fsm_2dispatch_8c_a8d91f5868f20ad3b72cfa63787d87444}\label{fsm_2dispatch_8c_a8d91f5868f20ad3b72cfa63787d87444}
|
|
\index{dispatch.c@{dispatch.c}!fsm\_init@{fsm\_init}}
|
|
\index{fsm\_init@{fsm\_init}!dispatch.c@{dispatch.c}}
|
|
\doxysubsubsection{\texorpdfstring{fsm\_init()}{fsm\_init()}}
|
|
{\footnotesize\ttfamily void fsm\+\_\+init (\begin{DoxyParamCaption}\item[{char \texorpdfstring{$\ast$}{*}}]{initial\+\_\+message\+\_\+from\+\_\+main }\end{DoxyParamCaption})}
|
|
|
|
F S M I N I T \texorpdfstring{$\ast$}{*} phantom documentation used to test the functioning of doxygen \Hypertarget{fsm_2dispatch_8c_a8c67f42f95d48ee2469c9a27d65db3e6}\label{fsm_2dispatch_8c_a8c67f42f95d48ee2469c9a27d65db3e6}
|
|
\index{dispatch.c@{dispatch.c}!fsm\_journal\_event@{fsm\_journal\_event}}
|
|
\index{fsm\_journal\_event@{fsm\_journal\_event}!dispatch.c@{dispatch.c}}
|
|
\doxysubsubsection{\texorpdfstring{fsm\_journal\_event()}{fsm\_journal\_event()}}
|
|
{\footnotesize\ttfamily void fsm\+\_\+journal\+\_\+event (\begin{DoxyParamCaption}\item[{int}]{severity, }\item[{int}]{source, }\item[{const char \texorpdfstring{$\ast$}{*}}]{file\+\_\+source, }\item[{const char \texorpdfstring{$\ast$}{*}}]{function\+\_\+source, }\item[{const char \texorpdfstring{$\ast$}{*}}]{string\+\_\+value }\end{DoxyParamCaption})}
|
|
|
|
phantom documentation used to test the functioning of doxygen \Hypertarget{fsm_2dispatch_8c_a435d1a5171a7d69662d701234722fee2}\label{fsm_2dispatch_8c_a435d1a5171a7d69662d701234722fee2}
|
|
\index{dispatch.c@{dispatch.c}!fsm\_journal\_publication\_request@{fsm\_journal\_publication\_request}}
|
|
\index{fsm\_journal\_publication\_request@{fsm\_journal\_publication\_request}!dispatch.c@{dispatch.c}}
|
|
\doxysubsubsection{\texorpdfstring{fsm\_journal\_publication\_request()}{fsm\_journal\_publication\_request()}}
|
|
{\footnotesize\ttfamily void fsm\+\_\+journal\+\_\+publication\+\_\+request (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
|
|
|
phantom documentation used to test the functioning of doxygen \Hypertarget{fsm_2dispatch_8c_ae921ecd39af67bb8dc0deb2cdc86125d}\label{fsm_2dispatch_8c_ae921ecd39af67bb8dc0deb2cdc86125d}
|
|
\index{dispatch.c@{dispatch.c}!fsm\_set\_exec\_edit@{fsm\_set\_exec\_edit}}
|
|
\index{fsm\_set\_exec\_edit@{fsm\_set\_exec\_edit}!dispatch.c@{dispatch.c}}
|
|
\doxysubsubsection{\texorpdfstring{fsm\_set\_exec\_edit()}{fsm\_set\_exec\_edit()}}
|
|
{\footnotesize\ttfamily void fsm\+\_\+set\+\_\+exec\+\_\+edit (\begin{DoxyParamCaption}\item[{int}]{choice }\end{DoxyParamCaption})}
|
|
|
|
phantom documentation used to test the functioning of doxygen \Hypertarget{fsm_2dispatch_8c_a770bcaeb0bd6f81cddcc3cd506468fff}\label{fsm_2dispatch_8c_a770bcaeb0bd6f81cddcc3cd506468fff}
|
|
\index{dispatch.c@{dispatch.c}!fsm\_set\_preferences\_modified@{fsm\_set\_preferences\_modified}}
|
|
\index{fsm\_set\_preferences\_modified@{fsm\_set\_preferences\_modified}!dispatch.c@{dispatch.c}}
|
|
\doxysubsubsection{\texorpdfstring{fsm\_set\_preferences\_modified()}{fsm\_set\_preferences\_modified()}}
|
|
{\footnotesize\ttfamily void fsm\+\_\+set\+\_\+preferences\+\_\+modified (\begin{DoxyParamCaption}\item[{bool}]{value }\end{DoxyParamCaption})}
|
|
|
|
phantom documentation used to test the functioning of doxygen \Hypertarget{fsm_2dispatch_8c_af5a464b19589ba1972c9b3aa3397945a}\label{fsm_2dispatch_8c_af5a464b19589ba1972c9b3aa3397945a}
|
|
\index{dispatch.c@{dispatch.c}!fsm\_set\_state\_rules\_data@{fsm\_set\_state\_rules\_data}}
|
|
\index{fsm\_set\_state\_rules\_data@{fsm\_set\_state\_rules\_data}!dispatch.c@{dispatch.c}}
|
|
\doxysubsubsection{\texorpdfstring{fsm\_set\_state\_rules\_data()}{fsm\_set\_state\_rules\_data()}}
|
|
{\footnotesize\ttfamily void fsm\+\_\+set\+\_\+state\+\_\+rules\+\_\+data (\begin{DoxyParamCaption}\item[{int}]{choice }\end{DoxyParamCaption})}
|
|
|
|
phantom documentation used to test the functioning of doxygen |