VIDEO_REQUEST_PACKET structure (video.h)
A pointer to a VIDEO_REQUEST_PACKET structure is passed to the miniport driver's HwVidStartIO function by the video port driver. The video port driver sets up the VRP from the IRP code (see IRP Major Function Codes) sent in response to a GDI call to EngDeviceIoControl. Usually, the corresponding display driver makes the call to EngDeviceIoControl when it needs support from the video port-miniport driver pair. The video port driver calls the miniport driver with the VRP to process the given IOCTL_VIDEO_XXX request.
Syntax
typedef struct _VIDEO_REQUEST_PACKET {
ULONG IoControlCode;
PSTATUS_BLOCK StatusBlock;
PVOID InputBuffer;
ULONG InputBufferLength;
PVOID OutputBuffer;
ULONG OutputBufferLength;
} VIDEO_REQUEST_PACKET, *PVIDEO_REQUEST_PACKET;
Members
IoControlCode
Specifies an IOCTL_VIDEO_XXX value passed to the EngDeviceIoControl function by the caller and sent to the video port driver in an IRP code. For more information about the set of system-defined IOCTL_VIDEO_XXX that miniport drivers must support, see Video Miniport Driver I/O Control Codes.
StatusBlock
Pointer to a STATUS_BLOCK structure in the VRP. StatusBlock is filled in by the miniport driver with return information upon completion of each VRP.
InputBuffer
Pointer to an input buffer that contains information passed in by the caller. The structure for the data depends on the value of IoControlCode. This member actually points to the same buffer as that indicated by OutputBuffer.
InputBufferLength
Specifies the size in bytes of the input buffer.
OutputBuffer
Pointer to an output buffer into which the miniport driver transfers data to be returned to the caller. The structure for the data depends on the value of IoControlCode. Because this member points to the same buffer as InputBuffer, a miniport driver must not write output in the OutputBuffer before it has consumed all input data from the InputBuffer.
OutputBufferLength
Specifies the size in bytes of the output buffer. A miniport driver cannot enlarge this buffer. A miniport driver should set the Status member of the StatusBlock with ERROR_INSUFFICIENT_BUFFER or ERROR_MORE_DATA if the given OutputBuffer is too small to contain all the returned information.
Requirements
Requirement | Value |
---|---|
Header | video.h (include Video.h) |