Compartir a través de


estructura HDAUDIO_BUS_INTERFACE_V2 (hdaudio.h)

La estructura HDAUDIO_BUS_INTERFACE_V2 especifica la información que un cliente necesita para llamar a las rutinas en la versión HDAUDIO_BUS_INTERFACE_V2 de la DDI de audio HD. La interfaz representada por esta estructura proporciona toda la funcionalidad de HDAUDIO_BUS_INTERFACE y también puede admitir notificaciones de eventos flexibles controladas por DMA.

Sintaxis

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;

Miembros

Size

Especifica el tamaño, en bytes, de la estructura HDAUDIO_BUS_INTERFACE_V2.

Version

Especifica la versión de la DDI de audio HD de línea base.

Context

Puntero a información de contexto específica de la interfaz.

InterfaceReference

Puntero a una rutina proporcionada por el controlador que incrementa el recuento de referencias de la interfaz.

InterfaceDereference

Puntero a una rutina proporcionada por el controlador que disminuye el recuento de referencias de la interfaz.

TransferCodecVerbs

Puntero de función a la rutina TransferCodecVerbs .

AllocateCaptureDmaEngine

Puntero de función a la rutina AllocateCaptureDmaEngine .

AllocateRenderDmaEngine

Puntero de función a la rutina AllocateRenderDmaEngine .

ChangeBandwidthAllocation

Puntero de función a la rutina ChangeBandwidthAllocation .

AllocateDmaBuffer

Puntero de función a la rutina AllocateDmaBuffer .

FreeDmaBuffer

Puntero de función a la rutina FreeDmaBuffer .

FreeDmaEngine

Puntero de función a la rutina FreeDmaEngine .

SetDmaEngineState

Puntero de función a la rutina SetDmaEngineState .

GetWallClockRegister

Puntero de función a la rutina GetWallClockRegister .

GetLinkPositionRegister

Puntero de función a la rutina GetLinkPositionRegister .

RegisterEventCallback

Puntero de función a la rutina RegisterEventCallback .

UnregisterEventCallback

Puntero de función a la rutina UnregisterEventCallback .

GetDeviceInformation

Puntero de función a la rutina GetDeviceInformation .

GetResourceInformation

Puntero de función a la rutina GetResourceInformation .

AllocateDmaBufferWithNotification

Puntero de función a la rutina AllocateDmaBufferWithNotification .

FreeDmaBufferWithNotification

Puntero de función a la rutina FreeDmaBufferWithNotification .

RegisterNotificationEvent

Puntero de función a la rutina RegisterNotificationEvent .

UnregisterNotificationEvent

Puntero de función a la rutina UnregisterNotificationEvent .

Comentarios

El IRP_MN_QUERY_INTERFACE IOCTL usa esta estructura para proporcionar información de interfaz a un cliente que consulta el controlador del bus de audio HD para el DDI de audio HD.

Los nombres y definiciones de los cinco primeros miembros de la estructura HDAUDIO_BUS_INTERFACE_V2 (Size, Version, Context, InterfaceReference y InterfaceDereference) son los mismos que en la estructura INTERFACE . Los miembros restantes son específicos de la DDI de audio HD de línea base y especifican punteros de función a las rutinas de DDI.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows Vista y versiones posteriores de Windows.
Encabezado hdaudio.h (incluya Hdaudio.h)

Consulte también

AllocateCaptureDmaEngine

AllocateDmaBuffer

AllocateDmaBufferWithNotification

AllocateRenderDmaEngine

ChangeBandwidthAllocation

FreeDmaBuffer

FreeDmaBufferWithNotification

FreeDmaEngine

GetDeviceInformation

GetLinkPositionRegister

GetResourceInformation

GetWallClockRegister

RegisterEventCallback

RegisterNotificationEvent

SetDmaEngineState

TransferCodecVerbs

Anular el registroEventCallback

UnregisterNotificationEvent