structure VIDEO_REQUEST_PACKET (video.h)
Un pointeur vers une structure VIDEO_REQUEST_PACKET est passé à la fonction du pilote miniport HwVidStartIO par le pilote de port vidéo. Le pilote de port vidéo configure le VRP à partir du code IRP (voir principaux codes de fonction IRP) envoyé en réponse à un appel GDI à EngDeviceIoControl. En règle générale, le pilote d’affichage correspondant effectue l’appel à EngDeviceIoControl quand il a besoin de la prise en charge de la paire de pilotes port-miniport vidéo. Le pilote de port vidéo appelle le pilote miniport avec le VRP pour traiter la demande IOCTL_VIDEO_XXX donnée.
Syntaxe
typedef struct _VIDEO_REQUEST_PACKET {
ULONG IoControlCode;
PSTATUS_BLOCK StatusBlock;
PVOID InputBuffer;
ULONG InputBufferLength;
PVOID OutputBuffer;
ULONG OutputBufferLength;
} VIDEO_REQUEST_PACKET, *PVIDEO_REQUEST_PACKET;
Membres
IoControlCode
Spécifie une valeur IOCTL_VIDEO_XXX passée à la fonction EngDeviceIoControl par l’appelant et envoyée au pilote de port vidéo dans un code IRP. Pour plus d’informations sur l’ensemble de IOCTL_VIDEO_XXX définis par le système, que les pilotes miniports doivent prendre en charge, consultez Codes de contrôle d’E/S du pilote miniport vidéo.
StatusBlock
Pointeur vers une structure STATUS_BLOCK dans le VRP. StatusBlock est renseigné par le pilote miniport avec des informations de retour à la fin de chaque VRP.
InputBuffer
Pointeur vers une mémoire tampon d’entrée qui contient les informations transmises par l’appelant. La structure des données dépend de la valeur de IoControlCode. Ce membre pointe en fait vers la même mémoire tampon que celle indiquée par OutputBuffer.
InputBufferLength
Spécifie la taille en octets de la mémoire tampon d’entrée.
OutputBuffer
Pointeur vers une mémoire tampon de sortie dans laquelle le pilote miniport transfère les données à retourner à l’appelant. La structure des données dépend de la valeur de IoControlCode. Étant donné que ce membre pointe vers la même mémoire tampon que InputBuffer, un pilote miniport ne doit pas écrire de sortie dans le OutputBuffer avant qu’il n’ait consommé toutes les données d’entrée du InputBuffer.
OutputBufferLength
Spécifie la taille en octets de la mémoire tampon de sortie. Un pilote miniport ne peut pas agrandir cette mémoire tampon. Un pilote miniport doit définir le membre Status du StatusBlock avec ERROR_INSUFFICIENT_BUFFER ou ERROR_MORE_DATA si le OutputBuffer donné est trop petit pour contenir toutes les informations retournées.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | video.h (include Video.h) |