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)

Voir aussi

AllocateCaptureDmaEngine

AllocateDmaBuffer

AllocationDmaBufferWithNotification

AllocateRenderDmaEngine

ChangeBandwidthAllocation

FreeDmaBuffer

FreeDmaBufferWithNotification

FreeDmaEngine

GetDeviceInformation

GetLinkPositionRegister

GetResourceInformation

GetWallClockRegister

RegisterEventCallback

RegisterNotificationEvent

SetDmaEngineState

TransferCodecVerbs

DésinscrireEventCallback

UnregisterNotificationEvent