Condividi tramite


IOCTL_LAMP_GET_CAPABILITIES_COLOR IOCTL (lamp.h)

Il codice di controllo IOCTL_LAMP_GET_CAPABILITIES_COLOR esegue una query sulle funzionalità della lampada quando il dispositivo è configurato per generare luce a colori.

#define IOCTL_LAMP_GET_CAPABILITIES_COLOR \
    CTL_CODE(IOCTL_LAMP_BASE, 0x0001, METHOD_BUFFERED, FILE_ANY_ACCESS)

Codice principale

IRP_MJ_DEVICE_CONTROL

Buffer di input

Irp->AssociatedIrp.SystemBuffer punta a un buffer di tipo LAMP_CAPABILITIES_COLOR.

Lunghezza del buffer di input

Lunghezza del buffer.

Buffer di output

Irp->AssociatedIrp.SystemBuffer è pieno di tutte le funzionalità supportate dall'hardware della lampada.

Lunghezza del buffer di output

IO_STACK_LOCATION.Parameters.DeviceIoControl.OutputBufferLength è la lunghezza del buffer (in byte) passata nel Irp->AssociatedIrp.SystemBuffer campo .

Blocco dello stato

Il driver imposta su Irp->IoStatus.StatusSTATUS_SUCCESS o sullo stato di errore appropriato. Verrà impostato Irp->IoStatus.Information sul numero di byte necessari per contenere il buffer.

Commenti

Il payload di questo IOCTL è una struttura LAMP_CAPABILITIES_COLOR .

Il campo IsSupported indica se la lampada può generare luce a colori. Se l'hardware non supporta la luce del colore, il driver deve impostare questo campo su FALSE.

Il campo IsLightIntensityAdjustable indica se è possibile programmare il livello di dominanza. Se la lampada non supporta la luce del colore (IsSupported restituisce FALSE), un client deve eliminare il valore di IsLightIntensityAdjustable.

Requisiti

Requisito Valore
Intestazione lamp.h