共用方式為


IOCTL_LAMP_GET_INTENSITY_WHITE IOCTL (lamp.h)

當燈光設定為發出白色光線時, IOCTL_LAMP_GET_INTENSITY_WHITE 控制程式代碼會查詢光線強度。

#define IOCTL_LAMP_GET_INTENSITY_WHITE \
    CTL_CODE(IOCTL_LAMP_BASE, 0x0004, METHOD_BUFFERED, FILE_ANY_ACCESS)

主要程序代碼

IRP_MJ_DEVICE_CONTROL

輸入緩衝區

Irp->AssociatedIrp.SystemBuffer 指向 LAMP_INTENSITY_WHITE 結構。

輸入緩衝區長度

LAMP_INTENSITY_WHITE 結構的長度。

輸出緩衝區

Irp->AssociatedIrp.SystemBuffer 會填入光線強度資訊。

輸出緩衝區長度

IO_STACK_LOCATION.Parameters.DeviceIoControl.OutputBufferLength 是以位元組為單位的緩衝區長度,傳入 Irp->AssociatedIrp.SystemBuffer 欄位。

狀態區塊

驅動程式會將 設定 Irp->IoStatus.StatusSTATUS_SUCCESS 或適當的錯誤狀態。

如果相機驅動程式已取得裝置,燈光驅動程式應該會透過 Irp->IoStatus.Status傳回STATUS_RESOURCE_IN_USE錯誤。

備註

這個 IOCTL 的承載類型是 LAMP_INTENSITY_WHITE 結構。

[ ] 字段是白色光線強度,百分比 (0 - 100) 。

規格需求

需求
標頭 lamp.h