HDAUDIO_BUS_INTERFACE_BDL-Struktur (hdaudio.h)

Die HDAUDIO_BUS_INTERFACE_BDL-Struktur gibt die Informationen an, die ein Client benötigt, um die Routinen in der HDAUDIO_BUS_INTERFACE_BDL Version von HD Audio DDI aufzurufen. Eine weitere Variante dieses DDI wird durch die HDAUDIO_BUS_INTERFACE-Struktur angegeben.

Syntax

typedef struct _HDAUDIO_BUS_INTERFACE_BDL {
  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_CONTIGUOUS_DMA_BUFFER AllocateContiguousDmaBuffer;
  PSETUP_DMA_ENGINE_WITH_BDL      SetupDmaEngineWithBdl;
  PFREE_CONTIGUOUS_DMA_BUFFER     FreeContiguousDmaBuffer;
  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_BDL, *PHDAUDIO_BUS_INTERFACE_BDL;

Member

Size

Gibt die Größe der HDAUDIO_BUS_INTERFACE_BDL-Struktur in Byte an.

Version

Gibt die Version des erweiterten HD-Audio-DDI an.

Context

Zeiger auf schnittstellenspezifische Kontextinformationen.

InterfaceReference

Zeiger auf eine vom Treiber bereitgestellte Routine, die die Referenzanzahl der Schnittstelle erhöht.

InterfaceDereference

Zeiger auf eine vom Treiber bereitgestellte Routine, die die Referenzanzahl der Schnittstelle verringert.

TransferCodecVerbs

Funktionszeiger auf die TransferCodecVerbs-Routine .

AllocateCaptureDmaEngine

Funktionszeiger auf die AllocateCaptureDmaEngine-Routine .

AllocateRenderDmaEngine

Funktionszeiger auf die AllocateRenderDmaEngine-Routine .

ChangeBandwidthAllocation

Funktionszeiger auf die ChangeBandwidthAllocation-Routine .

AllocateContiguousDmaBuffer

Funktionszeiger auf die AllocateContiguousDmaBuffer-Routine .

SetupDmaEngineWithBdl

Funktionszeiger auf die SetupDmaEngineWithBdl-Routine .

FreeContiguousDmaBuffer

Funktionszeiger auf die FreeContiguousDmaBuffer-Routine .

FreeDmaEngine

Funktionszeiger auf die FreeDmaEngine-Routine .

SetDmaEngineState

Funktionszeiger auf die SetDmaEngineState-Routine .

GetWallClockRegister

Funktionszeiger auf die GetWallClockRegister-Routine .

GetLinkPositionRegister

Funktionszeiger auf die GetLinkPositionRegister-Routine .

RegisterEventCallback

Funktionszeiger auf die RegisterEventCallback-Routine .

UnregisterEventCallback

Funktionszeiger auf die UnregisterEventCallback-Routine .

GetDeviceInformation

Funktionszeiger auf die GetDeviceInformation-Routine .

GetResourceInformation

Funktionszeiger auf die GetResourceInformation-Routine .

Hinweise

Die IRP_MN_QUERY_INTERFACE IOCTL verwendet diese Struktur, um Schnittstelleninformationen für einen Client bereitzustellen, der den HD Audio Bus-Treiber für den HD-Audio-DDI fragt. Eine weitere Variante dieses DDI wird durch die HDAUDIO_BUS_INTERFACE-Struktur angegeben.

Die HDAUDIO_BUS_INTERFACE_BDL- und HDAUDIO_BUS_INTERFACE strukturen sind ähnlich, weisen jedoch die folgenden Unterschiede auf:

  • HDAUDIO_BUS_INTERFACE_BDL verfügt über die drei Member AllocateContiguousDmaBuffer, SetupDmaEngineWithBdl und FreeContiguousDmaBuffer, die in HDAUDIO_BUS_INTERFACE nicht vorhanden sind.
  • HDAUDIO_BUS_INTERFACE verfügt über zwei Member, AllocateDmaBuffer und FreeDmaBuffer, die in HDAUDIO_BUS_INTERFACE_BDL nicht vorhanden sind.
Weitere Informationen finden Sie unter Unterschiede zwischen den HD-Audio-DDI-Versionen.

Die Namen und Definitionen der ersten fünf Member (Size, Version, Context, InterfaceReference und InterfaceDereference) sind identisch mit denen in der INTERFACE-Struktur . Die verbleibenden Member sind spezifisch für den erweiterten HD-Audio-DDI und geben Funktionszeiger auf die Routinen im DDI an. Weitere Informationen finden Sie unter Abrufen eines HDAUDIO_BUS_INTERFACE_BDL DDI-Objekts.

Anforderungen

Anforderung Wert
Header hdaudio.h (hdaudio.h einschließen)

Weitere Informationen

AllocateCaptureDmaEngine

AllocateContiguousDmaBuffer

AllocateRenderDmaEngine

ChangeBandwidthAllocation

FreeContiguousDmaBuffer

FreeDmaEngine

GetLinkPositionRegister

GetResourceInformation

GetWallClockRegister

HDAUDIO_BUS_INTERFACE

RegisterEventCallback

SetDmaEngineState

SetupDmaEngineWithBdl

TransferCodecVerbs

UnregisterEventCallback