PSI sics-cvs-psi_pre-ansto
This commit is contained in:
22
doc/programmer/fowrite.tex
Normal file
22
doc/programmer/fowrite.tex
Normal file
@@ -0,0 +1,22 @@
|
||||
\subsection{FOCUS Data File Writing}
|
||||
FOCUS writes NeXus files. This file writing is impleneted in the files
|
||||
fowrite.h and fowrite.c. So these files contain the code for writing
|
||||
FOCUS NeXus files. But there is more to it: FOCUS has a scheme where
|
||||
the data file is updated any 20 minutes during the course of an
|
||||
measurement. This scheme is implemented with the following bits and
|
||||
pieces:
|
||||
\begin{itemize}
|
||||
\item Data file updating is triggered by a special task function,
|
||||
FoTask, which is installed into the SICS tasker when counting starts.
|
||||
\item The module registers callbacks with the histogram memory which
|
||||
are invoked when counting starts or ends. These callback functions
|
||||
take care of craeting a new file and updating it.
|
||||
\item There is a special command which allows to start and update the
|
||||
data file manually.
|
||||
\end{itemize}
|
||||
|
||||
As is it not likely that more then one FOCUS writing object is ever
|
||||
needed, all the data structures are file statics in fowrite.c. The
|
||||
external interface of this module is just a interpreter initialisation
|
||||
function and a interpreter interface function for interacting with the
|
||||
data file writing object.
|
||||
Reference in New Issue
Block a user