IOCTL_AVCSTRM_CLASS IOCTL (avcstrm.h)
Un pilote de sous-unité AV/C utilise l’IRP IRP_MJ_INTERNAL_DEVICE_CONTROL, avec le membre IoControlCode défini sur IOCTL_AVCSTRM_CLASS, pour communiquer avec avcstrm.sys. Le pilote a accès à toutes les opérations fournies par le pilote de filtre AV/C Streaming (avcstrm.sys) via cette requête.
Pour plus d’informations sur les IRPs et les IOCTL, consultez Gestion des IRPs.
Code principal
Mémoire tampon d’entrée
Lors de l’entrée, paramètres Irp->->Others.Arguments 1 pointe vers une structure de AVC_STREAM_REQUEST_BLOCK. La fonction membre du AVC_STREAM_REQUEST_BLOCK spécifie le type de requête. Ne définissez pas ce membre directement. Utilisez la macro INIT_AVCSTRM_HEADER pour initialiser ce membre (ainsi que des membres supplémentaires de la structure AVC_STREAM_REQUEST_BLOCK). Le CommandData membre de l’AVC_STREAM_REQUEST_BLOCK est une union qui spécifie les paramètres spécifiques au type de requête de la requête. Les paramètres et leur signification sont documentés avec chaque requête (code de fonction). L’énumération AVCSTRM_FUNCTION fournit une liste de codes de fonction pris en charge par avcstrm.sys.
Longueur de la mémoire tampon d’entrée
Longueur d’une structure AVC_STREAM_REQUEST_BLOCK.
Mémoire tampon de sortie
En sortie, paramètres Irp->->Others.Arguments 1 pointe vers la structure AVC_STREAM_REQUEST_BLOCK passée en tant qu’entrée. Dans le cadre de la demande, le pilote de bus renseigne certains membres de la CommandData union de la structure AVC_STREAM_REQUEST_BLOCK avec des informations pour le pilote.
Longueur de la mémoire tampon de sortie
Longueur d’une structure AVC_STREAM_REQUEST_BLOCK.
Bloc d’état
Les informations renvoyées par le pilote AV/C Streaming dans le bloc d’état d’E/S sont documentées avec chaque requête.
Remarques
Doit être appelé à IRQL = PASSIVE_LEVEL.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | avcstrm.h (include Avcstrm.h) |