struttura HDAUDIO_BUS_INTERFACE_BDL (hdaudio.h)

La struttura HDAUDIO_BUS_INTERFACE_BDL specifica le informazioni richieste da un client per chiamare le routine nella versione HDAUDIO_BUS_INTERFACE_BDL di HD Audio DDI. Un'altra variante di questa DDI viene specificata dalla struttura HDAUDIO_BUS_INTERFACE .

Sintassi

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;

Members

Size

Specifica le dimensioni in byte della struttura HDAUDIO_BUS_INTERFACE_BDL.

Version

Specifica la versione dell'estensione 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 a funzione alla routine TransferCodecVerbs .

AllocateCaptureDmaEngine

Puntatore a funzione alla routine AllocateCaptureDmaEngine .

AllocateRenderDmaEngine

Puntatore a funzione alla routine AllocateRenderDmaEngine .

ChangeBandwidthAllocation

Puntatore a funzione alla routine ChangeBandwidthAllocation .

AllocateContiguousDmaBuffer

Puntatore a funzione alla routine AllocateContiguousDmaBuffer .

SetupDmaEngineWithBdl

Puntatore a funzione alla routine SetupDmaEngineWithBdl .

FreeContiguousDmaBuffer

Puntatore a funzione alla routine FreeContiguousDmaBuffer .

FreeDmaEngine

Puntatore a funzione alla routine FreeDmaEngine .

SetDmaEngineState

Puntatore a funzione alla routine SetDmaEngineState .

GetWallClockRegister

Puntatore a funzione alla routine GetWallClockRegister .

GetLinkPositionRegister

Puntatore di funzione alla routine GetLinkPositionRegister .

RegisterEventCallback

Puntatore a funzione alla routine RegisterEventCallback .

UnregisterEventCallback

Puntatore di funzione alla routine UnregisterEventCallback .

GetDeviceInformation

Puntatore a funzione alla routine GetDeviceInformation .

GetResourceInformation

Puntatore a funzione alla routine GetResourceInformation .

Commenti

Il IRP_MN_QUERY_INTERFACE IOCTL usa questa struttura per fornire informazioni sull'interfaccia a un client che esegue una 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.

Le strutture HDAUDIO_BUS_INTERFACE_BDL e HDAUDIO_BUS_INTERFACE sono simili, ma presentano le differenze seguenti:

  • HDAUDIO_BUS_INTERFACE_BDL ha tre membri, AllocateContiguousDmaBuffer, SetupDmaEngineWithBdl e FreeContiguousDmaBuffer, che non sono presenti in HDAUDIO_BUS_INTERFACE.
  • HDAUDIO_BUS_INTERFACE ha due membri, AllocateDmaBuffer e FreeDmaBuffer, che non sono presenti in HDAUDIO_BUS_INTERFACE_BDL.
Per altre informazioni, vedere Differenze tra le versioni DDI audio HD.

I nomi e le definizioni dei primi cinque membri (Size, Version, Context, InterfaceReference e InterfaceDereference) sono gli stessi della struttura INTERFACE . I membri rimanenti sono specifici dell'estensione HD Audio DDI e specificano i puntatori di funzione alle routine nell'DDI. Per altre informazioni, vedere Recupero di un oggetto DDI HDAUDIO_BUS_INTERFACE_BDL.

Requisiti

Requisito Valore
Intestazione hdaudio.h (include Hdaudio.h)

Vedi anche

AllocateCaptureDmaEngine

AllocateContiguousDmaBuffer

AllocateRenderDmaEngine

ChangeBandwidthAllocation

FreeContiguousDmaBuffer

FreeDmaEngine

GetLinkPositionRegister

GetResourceInformation

GetWallClockRegister

HDAUDIO_BUS_INTERFACE

RegisterEventCallback

SetDmaEngineState

SetupDmaEngineWithBdl

TransferCodecVerbs

UnregisterEventCallback