Partager via


IOCTL_LAMP_GET_CAPABILITIES_WHITE IOCTL (lamp.h)

Le code de contrôle IOCTL_LAMP_GET_CAPABILITIES_WHITE interroge les fonctionnalités de la lampe lorsque l’appareil est configuré pour émettre une lumière blanche.

#define IOCTL_LAMP_GET_CAPABILITIES_WHITE \
    CTL_CODE(IOCTL_LAMP_BASE, 0x0000, METHOD_BUFFERED, FILE_ANY_ACCESS)

Code principal

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d’entrée

Irp->AssociatedIrp.SystemBuffer pointe vers une mémoire tampon de type LAMP_CAPABILITIES_WHITE.

Longueur de la mémoire tampon d’entrée

Longueur de la mémoire tampon.

Mémoire tampon de sortie

Irp->AssociatedIrp.SystemBuffer est rempli de toutes les fonctionnalités prises en charge par le matériel de lampe.

Longueur de la mémoire tampon de sortie

IO_STACK_LOCATION.Parameters.DeviceIoControl.OutputBufferLength est la longueur de la mémoire tampon (en octets) passée dans le champ Irp->AssociatedIrp.SystemBuffer.

Bloc d’état

Le pilote définit Irp->IoStatus.Status sur STATUS_SUCCESS ou l’état d’erreur approprié. Il définit Irp->IoStatus.Information le nombre d’octets requis pour contenir la mémoire tampon.

Remarques

Par exigence, une lampe dont le pilote prend en charge l’interface de GUID_DEVINTERFACE_LAMP est nécessaire pour prendre en charge l’émission de lumière blanche.

La charge utile de ce IOCTL est une structure LAMP_CAPABILITIES_WHITE.

Le champ IsLightIntensityAdjustable indique si le niveau de luminance peut être programmé. Si ce champ prend la valeur FALSE, cela signifie que l’appareil sous-jacent prend uniquement en charge le commutateur activé/désactivé et que l’intensité de la lumière ne peut pas être ajustée.

Exigences

Exigence Valeur
d’en-tête lamp.h