IOCTL_LAMP_GET_CAPABILITIES_WHITE IOCTL (lamp.h)
Код элемента управления IOCTL_LAMP_GET_CAPABILITIES_WHITE запрашивает возможности лампы, когда устройство настроено для передачи белого света.
#define IOCTL_LAMP_GET_CAPABILITIES_WHITE \
CTL_CODE(IOCTL_LAMP_BASE, 0x0000, METHOD_BUFFERED, FILE_ANY_ACCESS)
Основной код
Входной буфер
Irp->AssociatedIrp.SystemBuffer
указывает на буфер типа LAMP_CAPABILITIES_WHITE.
Длина входного буфера
Длина буфера.
Выходной буфер
Irp->AssociatedIrp.SystemBuffer
заполнены всеми возможностями, поддерживаемыми оборудованием лампы.
Длина выходного буфера
IO_STACK_LOCATION.Parameters.DeviceIoControl.OutputBufferLength
— это длина буфера (в байтах), передаваемого в поле Irp->AssociatedIrp.SystemBuffer
.
Блок состояния
Драйвер задает Irp->IoStatus.Status
STATUS_SUCCESS или соответствующее состояние ошибки. Он задает Irp->IoStatus.Information
количество байтов, необходимых для хранения буфера.
Замечания
По требованию, лампа, драйвер которой поддерживает интерфейс GUID_DEVINTERFACE_LAMP, необходим для поддержки создания белого света.
Полезные данные этого IOCTL — это LAMP_CAPABILITIES_WHITE структура.
Поле IsLightIntensityAdjustable указывает, можно ли запрограммировать уровень света. Если это поле оценивается как FALSE, это означает, что базовое устройство поддерживает только переключатель включено или выключение, а интенсивность света не может быть скорректирована.
Требования
Требование | Ценность |
---|---|
заголовка | lamp.h |