Initial revision
This commit is contained in:
144
event.tex
Normal file
144
event.tex
Normal file
@ -0,0 +1,144 @@
|
||||
\subsection{SICS Events}
|
||||
This section lists the callback events known to Sics, their purpose, and
|
||||
their associated event datastructures when applicable. See the
|
||||
\ref{inter} section about callbacks for more information about
|
||||
callbacks. This only defines the integer codes possible. Please be
|
||||
aware that the implementation of the callbacks is a duty of the SICS
|
||||
objects generating it. The mentioning of an event code here means it
|
||||
is used somewhere in SICS but does not mean that it is implemented by
|
||||
all objects which might implement the event.
|
||||
|
||||
This module defines several event related functions as well.
|
||||
|
||||
\begin{flushleft} \small
|
||||
\begin{minipage}{\linewidth} \label{scrap1}
|
||||
$\langle$eFunc {\footnotesize ?}$\rangle\equiv$
|
||||
\vspace{-1ex}
|
||||
\begin{list}{}{} \item
|
||||
\mbox{}\verb@@\\
|
||||
\mbox{}\verb@ int Text2Event(char *pText);@\\
|
||||
\mbox{}\verb@@$\diamond$
|
||||
\end{list}
|
||||
\vspace{-1ex}
|
||||
\footnotesize\addtolength{\baselineskip}{-1ex}
|
||||
\begin{list}{}{\setlength{\itemsep}{-\parsep}\setlength{\itemindent}{-\leftmargin}}
|
||||
\item Macro referenced in scrap ?.
|
||||
\end{list}
|
||||
\end{minipage}\\[4ex]
|
||||
\end{flushleft}
|
||||
{\bf Text2Event } converts a text value into an event code. It returns -1
|
||||
if the event code is not known, else the apropriate event code.
|
||||
|
||||
\begin{flushleft} \small
|
||||
\begin{minipage}{\linewidth} \label{scrap2}
|
||||
$\langle$VE {\footnotesize ?}$\rangle\equiv$
|
||||
\vspace{-1ex}
|
||||
\begin{list}{}{} \item
|
||||
\mbox{}\verb@@\\
|
||||
\mbox{}\verb@#define VALUECHANGE 0@\\
|
||||
\mbox{}\verb@#define MOTDRIVE 1@\\
|
||||
\mbox{}\verb@#define MONITOR 2 @\\
|
||||
\mbox{}\verb@#define ROTSTART 3@\\
|
||||
\mbox{}\verb@#define ROTMOVE 4@\\
|
||||
\mbox{}\verb@#define SCANEND 5@\\
|
||||
\mbox{}\verb@#define SCANSTART 6@\\
|
||||
\mbox{}\verb@#define SCANPOINT 7@\\
|
||||
\mbox{}\verb@#define WLCHANGE 8@\\
|
||||
\mbox{}\verb@#define REFLECTIONDONE 9@\\
|
||||
\mbox{}\verb@#define COUNTSTART 10@\\
|
||||
\mbox{}\verb@#define COUNTEND 11@\\
|
||||
\mbox{}\verb@#define FILELOADED 12@\\
|
||||
\mbox{}\verb@@$\diamond$
|
||||
\end{list}
|
||||
\vspace{-1ex}
|
||||
\footnotesize\addtolength{\baselineskip}{-1ex}
|
||||
\begin{list}{}{\setlength{\itemsep}{-\parsep}\setlength{\itemindent}{-\leftmargin}}
|
||||
\item Macro referenced in scrap ?.
|
||||
\end{list}
|
||||
\end{minipage}\\[4ex]
|
||||
\end{flushleft}
|
||||
\begin{description}
|
||||
\item[VALUECHANGE] This is a variable changing its value. As event data a pointer to the
|
||||
SicsVariable is passed along. This is defined in sicsvar.h.
|
||||
\item[MOTDRIVE] a motor is moving. The event data is the current position.
|
||||
\item[MONITOR] The control value for a counting operation has changed.
|
||||
The event data is the new value.
|
||||
\item[ROTSTART] A velocity selector is starting up.
|
||||
\item[ROTMOVE] A velocity selector changes its rotation speed.
|
||||
\item[SCANEND] A scan has ended.
|
||||
\item[SCANSTART] A new scan has been started.
|
||||
\item[SCANPOINT] A scan point has finished and there is new data.
|
||||
\item[WLCHANGE] is incoked when the wavelength of a crystal monochromator
|
||||
changes. The event parameter is a pointer to the wave length or energy
|
||||
variable being driven. Client code can then get what it needs to know.
|
||||
\item[REFLECTIONDONE] is issued when a single reflection of a four circle
|
||||
fiffractometer has been measured.
|
||||
\item[COUNTSTART] is an event which signals the start of a counting
|
||||
operation.
|
||||
\item[COUNTEND] is an event signalling the end of a counting operation.
|
||||
\end{description}
|
||||
|
||||
Furthermore event contains system wide signal codes which are interpreted in
|
||||
the signal functions provided by each SICS task. These code are
|
||||
evaluated by the TaskSignalFunction which may be configured for each
|
||||
SICS task. See the task section for more information. Here, only
|
||||
possible codes are defined.
|
||||
|
||||
\begin{flushleft} \small
|
||||
\begin{minipage}{\linewidth} \label{scrap3}
|
||||
$\langle$VSIG {\footnotesize ?}$\rangle\equiv$
|
||||
\vspace{-1ex}
|
||||
\begin{list}{}{} \item
|
||||
\mbox{}\verb@@\\
|
||||
\mbox{}\verb@#define SICSINT 300@\\
|
||||
\mbox{}\verb@#define SICSBROADCAST 301@\\
|
||||
\mbox{}\verb@#define TOKENGRAB 302@\\
|
||||
\mbox{}\verb@#define TOKENRELEASE 303@\\
|
||||
\mbox{}\verb@@$\diamond$
|
||||
\end{list}
|
||||
\vspace{-1ex}
|
||||
\footnotesize\addtolength{\baselineskip}{-1ex}
|
||||
\begin{list}{}{\setlength{\itemsep}{-\parsep}\setlength{\itemindent}{-\leftmargin}}
|
||||
\item Macro referenced in scrap ?.
|
||||
\end{list}
|
||||
\end{minipage}\\[4ex]
|
||||
\end{flushleft}
|
||||
\begin{description}
|
||||
\item[SICSINT] An interrupt has ocurred. The signal data is the interrupt
|
||||
number which ocurred.
|
||||
\item[SICSBROADCAST] A message shall be sent to each SICS client. The signal
|
||||
data is the string to send.
|
||||
\item[TOKENGRAB] A connection has successfully grabbed the control token.
|
||||
\item[TOKENRELEASE] A connection has released the control token.
|
||||
|
||||
\end{description}
|
||||
\begin{flushleft} \small
|
||||
\begin{minipage}{\linewidth} \label{scrap4}
|
||||
\verb@"event.h"@ {\footnotesize ? }$\equiv$
|
||||
\vspace{-1ex}
|
||||
\begin{list}{}{} \item
|
||||
\mbox{}\verb@@\\
|
||||
\mbox{}\verb@/*----------------------------------------------------------------------------@\\
|
||||
\mbox{}\verb@ E V E N T@\\
|
||||
\mbox{}\verb@@\\
|
||||
\mbox{}\verb@ This header file lists the event codes known to SICS. These event code@\\
|
||||
\mbox{}\verb@ are used in callback functions. Where apropriate, the event data@\\
|
||||
\mbox{}\verb@ structures are also defined in this file.@\\
|
||||
\mbox{}\verb@@\\
|
||||
\mbox{}\verb@ Mark Koennecke, 1997@\\
|
||||
\mbox{}\verb@@\\
|
||||
\mbox{}\verb@----------------------------------------------------------------------------*/@\\
|
||||
\mbox{}\verb@#ifndef SICSEVENT@\\
|
||||
\mbox{}\verb@#define SICSEVENT@\\
|
||||
\mbox{}\verb@@$\langle$eFunc {\footnotesize ?}$\rangle$\verb@@\\
|
||||
\mbox{}\verb@@\\
|
||||
\mbox{}\verb@@$\langle$VE {\footnotesize ?}$\rangle$\verb@@\\
|
||||
\mbox{}\verb@@\\
|
||||
\mbox{}\verb@/*--------------- Signals for the Signalfunction of each task ------------*/@\\
|
||||
\mbox{}\verb@@$\langle$VSIG {\footnotesize ?}$\rangle$\verb@ @\\
|
||||
\mbox{}\verb@#endif@\\
|
||||
\mbox{}\verb@@$\diamond$
|
||||
\end{list}
|
||||
\vspace{-2ex}
|
||||
\end{minipage}\\[4ex]
|
||||
\end{flushleft}
|
Reference in New Issue
Block a user