VC_CALLBACK
typedef struct _VC_CALLBACK {
BOOLEAN (*DeviceOpenFunc)(PDEVICE_INFO);
BOOLEAN (*DeviceCloseFunc)(PDEVICE_INFO);
BOOLEAN (*ConfigFormatFunc)(PDEVICE_INFO, PCONFIG_INFO);
BOOLEAN (*ConfigDisplayFunc)(PDEVICE_INFO, PCONFIG_INFO);
BOOLEAN (*ConfigSourceFunc)(PDEVICE_INFO, PCONFIG_INFO);
DWORD (*GetOverlayModeFunc) (PDEVICE_INFO);
BOOLEAN (*SetKeyRGBFunc)(PDEVICE_INFO, PRGBQUAD);
BOOLEAN (*SetKeyPalIdxFunc)(PDEVICE_INFO, ULONG);
BOOLEAN (*SetOverlayRectsFunc)(PDEVICE_INFO, POVERLAY_RECTS);
BOOLEAN (*SetOverlayOffsetFunc)(PDEVICE_INFO, PRECT);
ULONG (*GetKeyColourFunc)(PDEVICE_INFO);
BOOLEAN (*CaptureFunc)(PDEVICE_INFO, BOOL);
BOOLEAN (*OverlayFunc)(PDEVICE_INFO, BOOL);
BOOLEAN (*StreamInitFunc)(PDEVICE_INFO, ULONG);
BOOLEAN (*StreamFiniFunc)(PDEVICE_INFO);
BOOLEAN (*StreamStartFunc)(PDEVICE_INFO);
BOOLEAN (*StreamStopFunc)(PDEVICE_INFO);
ULONG (*StreamGetPositionFunc)(PDEVICE_INFO);
BOOLEAN (*InterruptAcknowledge)(PDEVICE_INFO);
ULONG (*CaptureService)(PDEVICE_INFO, PUCHAR, PULONG, ULONG);
BOOLEAN (*DrawFrameFunc)(PDEVICE_INFO, PDRAWBUFFER);
BOOLEAN (*CleanupFunc)(PDEVICE_INFO);
} VC_CALLBACK, * PVC_CALLBACK;
The VC_CALLBACK structure is a dispatch table used by VCKernel.lib to
call functions provided by kernel-mode video capture drivers. The structure is
defined in vckernel.h.
Members
-
DeviceOpenFunc
-
Pointer to a kernel-mode video capture driver�s DeviceOpenFunc
function.
-
DeviceCloseFunc
-
Pointer to a kernel-mode video capture driver�s DeviceCloseFunc
function.
-
ConfigFormatFunc
-
Pointer to a kernel-mode video capture driver�s ConfigFormatFunc
function.
-
ConfigDisplayFunc
-
Pointer to a kernel-mode video capture driver�s ConfigDisplayFunc
function.
-
ConfigSourceFunc
-
Pointer to a kernel-mode video capture driver�s ConfigSourceFunc
function.
-
GetOverlayModeFunc
-
Pointer to a kernel-mode video capture driver�s GetOverlayModeFunc
function.
-
SetKeyRGBFunc
-
Pointer to a kernel-mode video capture driver�s SetKeyRGBFunc
function.
-
SetKeyPalIdxFunc
-
Pointer to a kernel-mode video capture driver�s SetKeyPalIdxFunc
function.
-
SetOverlayRectsFunc
-
Pointer to a kernel-mode video capture driver�s SetOverlayRectsFunc
function.
-
SetOverlayOffsetFunc
-
Pointer to a kernel-mode video capture driver�s SetOverlayOffsetFunc
function.
-
GetKeyColourFunc
-
Pointer to a kernel-mode video capture driver�s GetKeyColourFunc
function.
-
CaptureFunc
-
Pointer to a kernel-mode video capture driver�s CaptureFunc
function.
-
OverlayFunc
-
Pointer to a kernel-mode video capture driver�s OverlayFunc
function.
-
StreamInitFunc
-
Pointer to a kernel-mode video capture driver�s StreamInitFunc
function.
-
StreamFiniFunc
-
Pointer to a kernel-mode video capture driver�s StreamFiniFunc
function.
-
StreamStartFunc
-
Pointer to a kernel-mode video capture driver�s StreamStartFunc
function.
-
StreamStopFunc
-
Pointer to a kernel-mode video capture driver�s StreamStopFunc
function.
-
StreamGetPositionFunc
-
Pointer to a kernel-mode video capture driver�s StreamGetPositionFunc
function.
-
InterruptAcknowledge
-
Pointer to a kernel-mode video capture driver�s InterruptAcknowledge
function.
-
CaptureService
-
Pointer to a kernel-mode video capture driver�s CaptureService
function.
-
DrawFrameFunc
-
Pointer to a kernel-mode video capture driver�s DrawFrameFunc
function.
-
CleanupFunc
-
Pointer to a kernel-mode video capture driver�s CleanupFunc
function.
Comments
A kernel-mode video capture driver using VCKernel.lib is responsible
for filling in VCKernel.lib�s VC_CALLBACK structure. The driver obtains
the structure�s address by calling VC_GetCallbackTable.
The driver should obtain the structure�s address and fill in the table from
within its DriverEntry function, before hardware initialization is
attempted.