beautypg.com

Sensoray 711 User Manual

Page 29

background image

30

Sensoray Model 711 Instruction Manual

Returns
The function returns 0 in case of success, or an error code.

Notes
The SX11.dll handles the interrupts by creating a parallel thread, which wakes up when an
allowed interrupt occurs. The system part of the interrupt handling procedure copies the
necessary data to the global variable of INT_DATA type pointed to by pIntData, and calls
the user function pointed to by the func member of INT_DATA. The INT_DATA structure
contains the following members:

Member

Description

hfg

Frame grabber handle

.

Selects the frame grabber.

mask

Interrupt mask. Setting mask to 0 disables interrupts.
Setting mask to the following values (which can be ORed)
allows specific interrupts:
Value Description
STATUS_READY

Frame acquisition complete.

STATUS_VIDEO

Video status changed at the input
(e.g. present to absent).

STATUS_HLOCK

Horizontal lock condition changed at the
input.

STATUS_OFLOW

Overflow detected.

STATUS_HSYNC

Start of new line.

STATUS_VSYNC

Start of new field.

STATUS_FMT

Video format change detected

(e.g. NTSC to PAL).

STATUS_ERROR

Transfer error occurred. This is a combination
of bits.

status

Frame grabber status. The meaning of the individual bits corresponds
to that of the interrupt mask. The value of status is set when the
interrupt occurs.

func

Pointer to the user interrupt handling function. The function should
return a DWORD, and take no arguments.

priority

An integer specifying the interrupt handling thread priority

level. Takes

the following values:
THREAD_PRIORITY_LOWEST,
THREAD_PRIORITY_BELOW_NORMAL,
THREAD_PRIORITY_NORMAL,
THREAD_PRIORITY_ABOVE_NORMAL,
THREAD_PRIORITY_HIGHEST,
THREAD_PRIORITY_TIME_CRITICAL.

total

Total number of interrupts that occurred since X11_InterruptOn was
called.

lost

The number of interrupts not processed. The interrupts that occur

while

the user function is executing.

The data can be exchanged between the main application and user function via a global
variable, like shown in the example below. By default all interrupts are masked, that is
turned off, at the reset. To unmask (allow) the interrupt, X11_InterruptUnmask function has