| MIL 10 Reference
| Customize Help
| Save Settings

MseqProcess



See also
Availability
Available in MIL-Lite
Available in MIL

Available on Windows
Not available on Linux

Available on Non-Matrox computer
Available on Matrox 4Sight-X
Available on Matrox 4Sight GP
Available on Matrox Supersight
function map Function map
Examples
Next
Synopsis
Starts or stops a sequence processing session.
Syntax
void MseqProcess(
MIL_ID ContextSeqId, //in
MIL_INT64 Command, //in
MIL_INT64 CommandFlag //in
)
Description

This function starts or stops a sequence processing session. The sequence processing session performs the operation specified in the sequence context.

If you define a file (M_FILE) or buffer list (M_BUFFER_LIST) as the source of the input for the operation, the sequence processing session performs the operation as soon as the session is started (M_START). You can specify a synchronous (M_SYNCHRONOUS) or asynchronous (M_ASYNCHRONOUS) operation. For synchronous operations, the application will wait until the operation has finished before executing the next function; whereas, for asynchronous operations, other functions can execute while the operation is performed in a background thread.

If you define an image feed as the source (M_USER_FEED) and call MseqProcess() with M_START, the sequence processing session will wait for an image to be queued using MseqFeed(). As soon as an image is queued, the sequence processing session operates on it. If no images are queued, the sequence processing session idles and waits for images from MseqFeed(). You can only call MseqFeed() if the session has been started and set to M_ASYNCHRONOUS.

While you cannot start multiple sequence processing sessions simultaneously for a sequence context, you can allocate multiple sequence contexts and start a separate sequence processing session for each context.

To stop the sequence processing session immediately, without finishing the operation, use M_STOP with M_NULL. To wait for the sequence processing session to complete the operation completely, use M_STOP with M_WAIT.

H.264 video encoding is optimized for Intel CPUs and can be subject to performance and stability issues when used with other CPUs.

Note that this function reference has not been updated for a MIL system added during a MIL update. Refer to the MIL system's release note to see if there is complementary information.
Parameters
This function is not supported on the selected boards.
Parameters
ContextSeqId

Specifies the identifier of the sequence context. The sequence context must have been previously allocated using MseqAlloc().

Command

Specifies the command to give the sequence processing session.

See the Parameter associations section for possible values that can be specified.

CommandFlag

Specifies the synchronization state of the sequence processing session.

See the Parameter associations section for possible values that can be specified.

The table below lists possible values for the Command and CommandFlag parameters.

function map For starting or stopping the sequence processing session
CollapseCommand Description
CommandFlag
Collapse M_START

Specifies to start the sequence processing session.

(summarize)
Collapse M_ASYNCHRONOUS

Specifies for the sequence processing session to run asynchronously. Other functions in your application can execute while the operation is performed in a background thread.

(summarize)
Collapse M_SYNCHRONOUS

Specifies for the sequence processing session to run synchronously. Your application will wait until the operation has finished before executing the next function.

(summarize)
Collapse M_STOP

Specifies to stop the sequence processing session.

(summarize)
Collapse M_NULL

Specifies to stop the sequence processing session immediately, cancelling any further sequence processing from occuring.

Collapse M_WAIT

Specifies to stop the sequence processing session only after it has finished performing the specified operation.

Compilation information
Header Include mil.h.
Library Use mil.lib.
DLL Requires mil.dll.
START ASYNCHRONOUS SYNCHRONOUS STOP NULL WAIT