структура VIDEO_REQUEST_PACKET (video.h)
Указатель на структуру VIDEO_REQUEST_PACKET передается в функцию HwVidStartIO драйвера мини-порта драйвером видеопорта. Драйвер видеопорта настраивает VRP из кода IRP (см. раздел Основные коды функций IRP), отправленный в ответ на вызов GDI к EngDeviceIoControl. Как правило, соответствующий драйвер дисплея вызывает EngDeviceIoControl , когда ему требуется поддержка из пары драйверов видеопорт-минипорт. Драйвер видеопорта вызывает драйвер мини-порта с VRP для обработки заданного запроса IOCTL_VIDEO_XXX .
Синтаксис
typedef struct _VIDEO_REQUEST_PACKET {
ULONG IoControlCode;
PSTATUS_BLOCK StatusBlock;
PVOID InputBuffer;
ULONG InputBufferLength;
PVOID OutputBuffer;
ULONG OutputBufferLength;
} VIDEO_REQUEST_PACKET, *PVIDEO_REQUEST_PACKET;
Члены
IoControlCode
Задает значение IOCTL_VIDEO_XXX, переданное вызывающей функцией EngDeviceIoControl и отправленное драйверу видеопорта в коде IRP. Дополнительные сведения о наборе системных IOCTL_VIDEO_XXX , которые должны поддерживаться драйверами мини-порта, см. в разделе Коды управления вводом-выводом драйвера video Miniport Driver.
StatusBlock
Указатель на структуру STATUS_BLOCK в VRP. StatusBlock заполняется драйвером минипорта с возвращаемыми сведениями по завершении каждого VRP.
InputBuffer
Указатель на входной буфер, содержащий сведения, передаваемые вызывающим объектом. Структура данных зависит от значения IoControlCode. Этот элемент фактически указывает на тот же буфер, что и в OutputBuffer.
InputBufferLength
Задает размер входного буфера в байтах.
OutputBuffer
Указатель на выходной буфер, в который драйвер минипорта передает данные, которые будут возвращены вызывающей точке. Структура данных зависит от значения IoControlCode. Поскольку этот элемент указывает на тот же буфер, что и InputBuffer, драйвер мини-порта не должен записывать выходные данные в OutputBuffer , прежде чем он будет использовать все входные данные из InputBuffer.
OutputBufferLength
Задает размер выходного буфера в байтах. Драйвер мини-порта не может увеличить этот буфер. Драйвер мини-порта должен задать элемент StatusBlock с ERROR_INSUFFICIENT_BUFFER или ERROR_MORE_DATA, если заданный OutputBuffer слишком мал, чтобы содержать все возвращаемые сведения.
Требования
Требование | Значение |
---|---|
Заголовок | video.h (включить Video.h) |