structure HDAUDIO_BUS_INTERFACE_V2 (hdaudio.h)
La structure HDAUDIO_BUS_INTERFACE_V2 spécifie les informations dont un client a besoin pour appeler les routines dans la version HDAUDIO_BUS_INTERFACE_V2 du DDI Audio HD. L’interface représentée par cette structure fournit toutes les fonctionnalités de HDAUDIO_BUS_INTERFACE et peut également prendre en charge la notification d’événements flexible pilotée par DMA.
Syntaxe
typedef struct _HDAUDIO_BUS_INTERFACE_V2 {
USHORT Size;
USHORT Version;
PVOID Context;
PINTERFACE_REFERENCE InterfaceReference;
PINTERFACE_DEREFERENCE InterfaceDereference;
PTRANSFER_CODEC_VERBS TransferCodecVerbs;
PALLOCATE_CAPTURE_DMA_ENGINE AllocateCaptureDmaEngine;
PALLOCATE_RENDER_DMA_ENGINE AllocateRenderDmaEngine;
PCHANGE_BANDWIDTH_ALLOCATION ChangeBandwidthAllocation;
PALLOCATE_DMA_BUFFER AllocateDmaBuffer;
PFREE_DMA_BUFFER FreeDmaBuffer;
PFREE_DMA_ENGINE FreeDmaEngine;
PSET_DMA_ENGINE_STATE SetDmaEngineState;
PGET_WALL_CLOCK_REGISTER GetWallClockRegister;
PGET_LINK_POSITION_REGISTER GetLinkPositionRegister;
PREGISTER_EVENT_CALLBACK RegisterEventCallback;
PUNREGISTER_EVENT_CALLBACK UnregisterEventCallback;
PGET_DEVICE_INFORMATION GetDeviceInformation;
PGET_RESOURCE_INFORMATION GetResourceInformation;
PALLOCATE_DMA_BUFFER_WITH_NOTIFICATION AllocateDmaBufferWithNotification;
PFREE_DMA_BUFFER_WITH_NOTIFICATION FreeDmaBufferWithNotification;
PREGISTER_NOTIFICATION_EVENT RegisterNotificationEvent;
PUNREGISTER_NOTIFICATION_EVENT UnregisterNotificationEvent;
} HDAUDIO_BUS_INTERFACE_V2, *PHDAUDIO_BUS_INTERFACE_V2;
Membres
Size
Spécifie la taille, en octets, de la structure HDAUDIO_BUS_INTERFACE_V2.
Version
Spécifie la version du DDI audio HD de référence.
Context
Pointeur vers des informations de contexte spécifiques à l’interface.
InterfaceReference
Pointeur vers une routine fournie par le pilote qui incrémente le nombre de références pour l’interface.
InterfaceDereference
Pointeur vers une routine fournie par le pilote qui décrémente le nombre de références pour l’interface.
TransferCodecVerbs
Pointeur de fonction vers la routine TransferCodecVerbs .
AllocateCaptureDmaEngine
Pointeur de fonction vers la routine AllocateCaptureDmaEngine .
AllocateRenderDmaEngine
Pointeur de fonction vers la routine AllocateRenderDmaEngine .
ChangeBandwidthAllocation
Pointeur de fonction vers la routine ChangeBandwidthAllocation .
AllocateDmaBuffer
Pointeur de fonction vers la routine AllocateDmaBuffer .
FreeDmaBuffer
Pointeur de fonction vers la routine FreeDmaBuffer .
FreeDmaEngine
Pointeur de fonction vers la routine FreeDmaEngine .
SetDmaEngineState
Pointeur de fonction vers la routine SetDmaEngineState .
GetWallClockRegister
Pointeur de fonction vers la routine GetWallClockRegister .
GetLinkPositionRegister
Pointeur de fonction vers la routine GetLinkPositionRegister .
RegisterEventCallback
Pointeur de fonction vers la routine RegisterEventCallback .
UnregisterEventCallback
Pointeur de fonction vers la routine UnregisterEventCallback .
GetDeviceInformation
Pointeur de fonction vers la routine GetDeviceInformation .
GetResourceInformation
Pointeur de fonction vers la routine GetResourceInformation .
AllocateDmaBufferWithNotification
Pointeur de fonction vers la routine AllocateDmaBufferWithNotification .
FreeDmaBufferWithNotification
Pointeur de fonction vers la routine FreeDmaBufferWithNotification .
RegisterNotificationEvent
Pointeur de fonction vers la routine RegisterNotificationEvent .
UnregisterNotificationEvent
Pointeur de fonction vers la routine UnregisterNotificationEvent .
Remarques
Le IRP_MN_QUERY_INTERFACE IOCTL utilise cette structure pour fournir des informations d’interface à un client qui interroge le pilote de bus Audio HD pour le DDI Audio HD.
Les noms et définitions des cinq premiers membres de la structure HDAUDIO_BUS_INTERFACE_V2 (Taille, Version, Contexte, InterfaceReference et InterfaceDereference) sont les mêmes que dans la structure INTERFACE . Les autres membres sont spécifiques à la base de référence HD Audio DDI et spécifient des pointeurs de fonction vers les routines dans le DDI.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows Vista et les versions plus récentes de Windows. |
En-tête | hdaudio.h (inclure Hdaudio.h) |