HDAUDIO_BUS_INTERFACE結構 (hdaudio.h)
HDAUDIO_BUS_INTERFACE 結構會指定用戶端在 HD 音訊 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結構類似,但有下列差異:
- HDAUDIO_BUS_INTERFACE有兩個成員 AllocateDmaBuffer 和 FreeDmaBuffer,這些成員不存在於HDAUDIO_BUS_INTERFACE_BDL中。
- HDAUDIO_BUS_INTERFACE_BDL有三個成員 AllocateContiguousDmaBuffer、 FreeContiguousDmaBuffer 和 SetupDmaEngineWithBdl,這些成員不存在於HDAUDIO_BUS_INTERFACE中。
前五個成員的名稱和定義 (Size、 Version、 Context、 InterfaceReference 和 InterfaceDereference) 與 INTERFACE 結構相同。 其餘成員專屬於基準 HD 音訊 DDI,並指定 DDI 中例程的函式指標。 如需詳細資訊,請參閱 取得HDAUDIO_BUS_INTERFACE DDI 物件。
規格需求
需求 | 值 |
---|---|
標頭 | hdaudio.h (包含 Hdaudio.h) |