Compartir a través de


estructura KSDEVICE_DESCRIPTOR (ks.h)

La estructura KSDEVICE_DESCRIPTOR describe las características de un dispositivo determinado.

Sintaxis

typedef struct _KSDEVICE_DESCRIPTOR {
  const KSDEVICE_DISPATCH   *Dispatch;
  ULONG                     FilterDescriptorsCount;
  const KSFILTER_DESCRIPTOR const * * FilterDescriptors;
  ULONG                     Version;
  ULONG                     Flags;
  PVOID                     Alignment;
} KSDEVICE_DESCRIPTOR, *PKSDEVICE_DESCRIPTOR;

Miembros

Dispatch

Puntero a la tabla de distribución del cliente para este dispositivo. Esta tabla de distribución contiene funciones de distribución de cliente para mensajes PNP, como Agregar, Iniciar, Detener, Quitar. No es necesario que los clientes proporcionen una tabla de distribución a menos que quieran recibir devoluciones de llamada para los mensajes PNP descritos en la tabla de distribución. Cualquier miembro de la tabla de distribución puede ser NULL para indicar que el cliente no quiere recibir notificaciones para ese mensaje en particular. Para obtener más información, vea KSDEVICE_DISPATCH.

FilterDescriptorsCount

Este miembro contiene el número de descriptores de filtro para este dispositivo que se proporcionarán en el miembro filterDescriptors . Cero es un valor legal para este miembro; Los clientes pueden crear generadores de filtros dinámicamente con la función KsCreateFilterFactory en lugar de describirlas estáticamente en el descriptor de dispositivo.

FilterDescriptors

Puntero a una matriz de descriptores de filtro que describen los filtros que puede crear este dispositivo. Este miembro puede ser NULL si FilterDescriptorsCount es cero. Para obtener más información, vea KSFILTER_DESCRIPTOR.

Version

Valor de tipo ULONG. Debe ser uno y solo uno de los valores de la tabla siguiente, o establecerlo en cero si escribe un controlador 0x100 versión anterior.

Valor Descripción
KSDEVICE_DESCRIPTOR_VERSION Indica la compatibilidad del AVStrMiniDeviceQueryInterface envío de KSDEVICE_DISPATCH.
KSDEVICE_DESCRIPTOR_VERSION_2 Indica la compatibilidad del miembro Flags de KSDEVICE_DESCRIPTOR.

Flags

Valor de tipo ULONG. Actualmente solo hay una marca definida.

Bandera Descripción
KSDEVICE_FLAG_ENABLE_REMOTE_WAKEUP Indica que el dispositivo admite la reactivación remota.

Alignment

Observaciones

Con más frecuencia, esta estructura se usa junto con KsInitializeDriver en la función de DriverEntry del cliente para inicializar el dispositivo. Esta estructura también se usa para inicializar o crear dispositivos manualmente con las funciones de KsInitializeDeviceDevice y KsCreateDevice.

Si establece versión en KSDEVICE_DESCRIPTOR_VERSION_2 y ejecuta el controlador en una versión temprana de AVStream que no admite Marcas, todas las marcas se considerarán cero.

Del mismo modo, el uso de un descriptor de versión anterior en versiones posteriores de AVStream no hace que se especifiquen marcas.

Requisitos

Requisito Valor
encabezado de ks.h (incluya Ks.h)

Consulte también

KSDEVICE_DISPATCH

KSFILTER_DESCRIPTOR

KsCreateDevice

KsInitializeDevice

KsInitializeDriver