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) |