Partager via


HDAUDIO_BUS_INTERFACE structure (hdaudio.h)

La structure HDAUDIO_BUS_INTERFACE spécifie les informations dont un client a besoin pour appeler les routines dans la version HDAUDIO_BUS_INTERFACE de hd Audio DDI. Une autre variante de cette DDI est spécifiée par la structure HDAUDIO_BUS_INTERFACE_BDL .

Syntaxe

typedef struct _HDAUDIO_BUS_INTERFACE {
  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;
} HDAUDIO_BUS_INTERFACE, *PHDAUDIO_BUS_INTERFACE;

Membres

Size

Spécifie la taille en octets de la structure HDAUDIO_BUS_INTERFACE.

Version

Spécifie la version du DDI audio HD de base 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 de l’interface.

InterfaceDereference

Pointeur vers une routine fournie par le pilote qui décrémente le nombre de références de 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 .

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. Une autre variante de cette DDI est spécifiée par la structure HDAUDIO_BUS_INTERFACE_BDL.

Les structures HDAUDIO_BUS_INTERFACE et HDAUDIO_BUS_INTERFACE_BDL sont similaires, mais présentent les différences suivantes :

Pour plus d’informations, consultez Différences entre les versions DDI audio HD.

Les noms et définitions des cinq premiers membres (Size, Version, Context, InterfaceReference et InterfaceDereference) sont les mêmes que dans la structure INTERFACE . Les membres restants sont spécifiques à la base de référence HD Audio DDI et spécifient des pointeurs de fonction vers les routines dans la DDI. Pour plus d’informations, consultez Obtention d’un objet DDI HDAUDIO_BUS_INTERFACE.

Configuration requise

Condition requise Valeur
En-tête hdaudio.h (inclure Hdaudio.h)

Voir aussi

AllocateCaptureDmaEngine

AllocateDmaBuffer

AllocateRenderDmaEngine

ChangeBandwidthAllocation

FreeDmaBuffer

FreeDmaEngine

GetDeviceInformation

GetLinkPositionRegister

GetResourceInformation

GetWallClockRegister

HDAUDIO_BUS_INTERFACE_BDL

RegisterEventCallback

SetDmaEngineState

TransferCodecVerbs

UnregisterEventCallback