hdaudio.h) (HDAUDIO_BUS_INTERFACE_V2 结构

HDAUDIO_BUS_INTERFACE_V2 结构指定客户端调用 hd Audio DDI HDAUDIO_BUS_INTERFACE_V2 版本中例程所需的信息。 此结构表示的接口提供 HDAUDIO_BUS_INTERFACE 的所有功能,还可以支持灵活的 DMA 驱动的事件通知。

语法

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;

成员

Size

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

Version

指定基线 HD Audio 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 例程的函数指针。

AllocateDmaBufferWithNotification

指向 AllocateDmaBufferWithNotification 例程的函数指针。

FreeDmaBufferWithNotification

指向 FreeDmaBufferWithNotification 例程的函数指针。

RegisterNotificationEvent

指向 RegisterNotificationEvent 例程的函数指针。

UnregisterNotificationEvent

指向 UnregisterNotificationEvent 例程的函数指针。

注解

IRP_MN_QUERY_INTERFACE IOCTL 使用此结构向正在查询 HD Audio DDI 的 HD 音频总线驱动程序的客户端提供接口信息。

HDAUDIO_BUS_INTERFACE_V2结构的前五个成员的名称和定义 (Size、Version、Context、InterfaceReference 和 InterfaceDereference) 与 INTERFACE 结构中的相同。 其余成员特定于基线 HD Audio DDI,并指定指向 DDI 中例程的函数指针。

要求

要求
最低受支持的客户端 在 Windows Vista 和更高版本的 Windows 中可用。
标头 hdaudio.h (包括 Hdaudio.h)

另请参阅

AllocateCaptureDmaEngine

AllocateDmaBuffer

AllocateDmaBufferWithNotification

AllocateRenderDmaEngine

ChangeBandwidthAllocation

FreeDmaBuffer

FreeDmaBufferWithNotification

FreeDmaEngine

GetDeviceInformation

GetLinkPositionRegister

GetResourceInformation

GetWallClockRegister

RegisterEventCallback

RegisterNotificationEvent

SetDmaEngineState

TransferCodecVerbs

UnregisterEventCallback

UnregisterNotificationEvent