HDAUDIO_BUS_INTERFACE结构 (hdaudio.h)

HDAUDIO_BUS_INTERFACE结构指定客户端在 HD Audio DDI HDAUDIO_BUS_INTERFACE 版本中调用例程所需的信息。 此 DDI 的另一个变体是由 HDAUDIO_BUS_INTERFACE_BDL 结构指定的。

语法

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;

成员

Size

指定HDAUDIO_BUS_INTERFACE结构的大小(以字节为单位)。

Version

指定基线 HD 音频 DDI 的版本。

Context

指向特定于接口的上下文信息的指针。

InterfaceReference

指向驱动程序提供的例程的指针,该例程递增接口的引用计数。

InterfaceDereference

指向驱动程序提供的例程的指针,该例程会递减接口的引用计数。

TransferCodecVerbs

指向 TransferCodecVerbs 例程的函数指针。

AllocateCaptureDmaEngine

指向 AllocateCaptureDmaEngine 例程的函数指针。

AllocateRenderDmaEngine

指向 AllocateRenderDmaEngine 例程的函数指针。

ChangeBandwidthAllocation

指向 ChangeBandwidthAllocation 例程的函数指针。

AllocateDmaBuffer

指向 AllocateDmaBuffer 例程的函数指针。

FreeDmaBuffer

指向 FreeDmaBuffer 例程的函数指针。

FreeDmaEngine

指向 FreeDmaEngine 例程的函数指针。

SetDmaEngineState

指向 SetDmaEngineState 例程的函数指针。

GetWallClockRegister

指向 GetWallClockRegister 例程的函数指针。

GetLinkPositionRegister

指向 GetLinkPositionRegister 例程的函数指针。

RegisterEventCallback

指向 RegisterEventCallback 例程的函数指针。

UnregisterEventCallback

指向 UnregisterEventCallback 例程的函数指针。

GetDeviceInformation

指向 GetDeviceInformation 例程的函数指针。

GetResourceInformation

指向 GetResourceInformation 例程的函数指针。

注解

IRP_MN_QUERY_INTERFACE IOCTL 使用此结构向正在查询 HD 音频 DDI 的 HD 音频总线驱动程序的客户端提供接口信息。 此 DDI 的另一个变体由HDAUDIO_BUS_INTERFACE_BDL结构指定。

HDAUDIO_BUS_INTERFACE和HDAUDIO_BUS_INTERFACE_BDL结构相似,但存在以下差异:

有关详细信息,请参阅 HD 音频 DDI 版本之间的差异

前五个成员的名称和定义 (SizeVersionContextInterfaceReference 和 InterfaceDereference) INTERFACE 结构相同。 其余成员特定于基线 HD 音频 DDI,并指定函数指针到 DDI 中的例程。 有关详细信息,请参阅 获取HDAUDIO_BUS_INTERFACE DDI 对象

要求

   
Header hdaudio.h (包括 Hdaudio.h)

另请参阅

AllocateCaptureDmaEngine

AllocateDmaBuffer

AllocateRenderDmaEngine

ChangeBandwidthAllocation

FreeDmaBuffer

FreeDmaEngine

GetDeviceInformation

GetLinkPositionRegister

GetResourceInformation

GetWallClockRegister

HDAUDIO_BUS_INTERFACE_BDL

RegisterEventCallback

SetDmaEngineState

TransferCodecVerbs

UnregisterEventCallback