File MIES_ThreadedFIFOHandling.ipf¶
TFH Functions related to threadsafe FIFO monitor and stop daemons
Unnamed Group
-
static const double TFH_RESTART_ACQ = 0x1¶
Mode constants.
DAQ restarting for TP MP
-
static const double TFH_STOP_ACQ = 0x2¶
DAQ stopping.
Functions
-
variable TFH_StartFIFOResetDeamon(variable hwType, variable deviceID)¶
Start the FIFO reset daemon used for TP MD.
-
variable TFH_StartFIFOStopDaemon(variable hwType, variable deviceID)¶
Start the FIFO stop daemon used for DAQ MD.
-
static variable TFH_StartFIFODeamonInternal(variable hwType, variable deviceID, variable mode)¶
Start the FIFO reset daemon used for TP MD.
We create one thread group for each device.
-
variable TFH_StopFIFODaemon(variable hwType, variable deviceID)¶
Stop the FIFO daemon if required.
Sets the global
threadGroupIDFifo
to NaN afterwards.
-
static variable TFH_FifoLoop(wave config, variable deviceID, variable stopCollectionPoint, variable ADChannelToMonitor, variable mode)¶
Worker function used for monitoring the FIFO position of the given device.
Actions depend on
mode
:TFH_RESTART_ACQ: Restart acquisition from the start
TFH_STOP_ACQ: Stop acquisition and quit running
Stops in the following cases:
An error during ITC operation calls
The input queue is not empty
Pushes the following entries into the thread queue:
fifoPos: fifo position (relative to offset)
Variables
-
static const double TIMEOUT_IN_MS = 50¶