Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La struttura HDAUDIO_BUS_INTERFACE specifica le informazioni richieste da un client per chiamare le routine nella versione HDAUDIO_BUS_INTERFACE di HD Audio DDI. Un'altra variante di questa DDI viene specificata dalla struttura HDAUDIO_BUS_INTERFACE_BDL.
Sintassi
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;
Membri
Size
Specifica le dimensioni in byte della struttura HDAUDIO_BUS_INTERFACE.
Version
Specifica la versione di base di HD Audio DDI.
Context
Puntatore a informazioni di contesto specifiche dell'interfaccia.
InterfaceReference
Puntatore a una routine fornita dal driver che incrementa il conteggio dei riferimenti dell'interfaccia.
InterfaceDereference
Puntatore a una routine fornita dal driver che decrementa il conteggio dei riferimenti dell'interfaccia.
TransferCodecVerbs
Puntatore di funzione alla routine TransferCodecVerbs.
AllocateCaptureDmaEngine
Puntatore di funzione alla routine AllocateCaptureDmaEngine.
AllocateRenderDmaEngine
Puntatore di funzione alla routine AllocateRenderDmaEngine.
ChangeBandwidthAllocation
Puntatore di funzione alla routine ChangeBandwidthAllocation.
AllocateDmaBuffer
Puntatore di funzione alla routine AllocateDmaBuffer.
FreeDmaBuffer
Puntatore di funzione alla routine FreeDmaBuffer.
FreeDmaEngine
Puntatore di funzione alla routine FreeDmaEngine.
SetDmaEngineState
Puntatore di funzione alla routine SetDmaEngineState.
GetWallClockRegister
Puntatore di funzione alla routine getWallClockRegister.
GetLinkPositionRegister
Puntatore di funzione alla routine GetLinkPositionRegister.
RegisterEventCallback
Puntatore di funzione alla routine RegisterEventCallback.
UnregisterEventCallback
Puntatore di funzione alla routine unregisterEventCallback.
GetDeviceInformation
Puntatore di funzione alla routine GetDeviceInformation.
GetResourceInformation
Puntatore di funzione alla routine GetResourceInformation.
Osservazioni
Il IRP_MN_QUERY_INTERFACE IOCTL usa questa struttura per fornire informazioni sull'interfaccia a un client che esegue query sul driver del bus audio HD per l'HD Audio DDI. Un'altra variante di questa DDI viene specificata dalla struttura HDAUDIO_BUS_INTERFACE_BDL.
Le strutture HDAUDIO_BUS_INTERFACE e HDAUDIO_BUS_INTERFACE_BDL sono simili, ma presentano le differenze seguenti:
- HDAUDIO_BUS_INTERFACE ha due membri, AllocateDmaBuffer e FreeDmaBuffer, che non sono presenti in HDAUDIO_BUS_INTERFACE_BDL.
- HDAUDIO_BUS_INTERFACE_BDL ha tre membri, AllocateContiguousDmaBuffer, FreeContiguousDmaBuffere SetupDmaEngineWithBdl, non presenti in HDAUDIO_BUS_INTERFACE.
I nomi e le definizioni dei primi cinque membri (Size, Version, Context, InterfaceReferencee InterfaceDereference) sono gli stessi della struttura INTERFACE. I membri rimanenti sono specifici della baseline HD Audio DDI e specificano puntatori di funzione alle routine nell'DDI. Per altre informazioni, vedere Ottenere un oggetto DDI HDAUDIO_BUS_INTERFACE.
Fabbisogno
Requisito | Valore |
---|---|
intestazione | hdaudio.h (include Hdaudio.h) |