淺色感測器閾值
本主題提供光線感測器閾值的相關信息。
下表顯示光線感測器的驅動程序預設閾值。 光線感測器的預設間隔為10 Hz。 如需類型數據行中顯示的類型詳細資訊,請參閱 PROPVARIANT 結構。
屬性索引鍵 | 類型 | 必要/選用 | 預設值 | 描述 |
---|---|---|---|---|
PKEY_SensorData_LightLevel_Lux | VT_R4 | 必要 | 0.25f | 達到閾值所需的最低亮度變更量,以 lux 百分比為單位。 值為 0.25f 表示 25% 的亮度變更。 |
PKEY_SensorData_LightLevel_Lux_Threshold_AbsoluteDifference | VT_R4 | 選擇性 | 1.0f | 達到以 lux 為單位的臨界值所需的最低亮度變更量。 值為 1.0f 表示 1 lux 的亮度變更。 注意: 強烈建議在可攜式裝置上實作此閾值,因為它有助於降低低環境光線環境中的電池電量。 |
PKEY_SensorData_LightChromaticityX | VT_R4 | 如果支援色彩,則為必要。 選擇性,否則為選擇性 | 0.01f | 達到閾值所需的 CIE 1931 x 色彩座標變更量下限,以絕對差異表示。 |
PKEY_SensorData_LightChromaticityY | VT_R4 | 如果支援色彩,則為必要。 選擇性,否則為選擇性 | 0.01f | 達到閾值所需的 CIE 1931 y 色彩座標變更量下限,以絕對差異表示。 |
PKEY_SensorData_LightTemperature_Kelvins | VT_R4 | 如果支援色彩,則為必要。 選擇性,否則為選擇性 | 50.0f | 達到閾值所需的光線溫度變更量下限,以 Kelvins 為單位。 |
光感測器只有在 LUX 值變更時,才必須報告新的數據樣本。 這個建議的報告模型可確保光線感測器不會在完全深色、零 (0) LUX 環境中重複報告新的數據樣本。
如果未提供PKEY_SensorData_LightLevel_Lux_Threshold_AbsoluteDifference,環境光線感測器驅動程序必須在符合PKEY_SensorData_LightLevel_Lux閾值時呼叫 SensorsCxSensorDataReady ,向感測器類別延伸模組報告範例讀取。 PKEY_SensorData_LightLevel_Lux閾值是以 lux 的差異百分比表示。 例如,如果此臨界值設定為 0.25f,而回報給感測器類別延伸的最後一個樣本為 40 lux,則下一個要報告的樣本應低於 30 lux 或大於 50 lux (+/-25% 為 40) 。 如果除了PKEY_SensorData_LightLevel_Lux提供PKEY_SensorData_LightLevel_Lux_Threshold_AbsoluteDifference之外,環境光線感測器必須在 符合這兩 個臨界值時向感測器類別延伸報告樣本讀取。 例如,如果PKEY_SensorData_LightLevel_Lux_Threshold_AbsoluteDifference設定為 4.0 lux,而PKEY_SensorData_LightLevel_Lux設定為 0.25 (,也就是 25%) ,而且回報給感測器類別延伸模組的最後一個樣本讀數值為 4 lux,則會PKEY_SensorData_LightLevel_Lux_Threshold_AbsoluteDifference最嚴格的臨界值。 因此,要報告的下一個樣本讀取應該是 0 lux 或 8 lux。 相對地,如果PKEY_SensorData_LightLevel_Lux_Threshold_AbsoluteDifference設定為 4.0 lux,而PKEY_SensorData_LightLevel_Lux設定為 0.25 (亦即 25%) ,但回報給感測器類別延伸模組的最後一個樣本讀數值為 40 lux,則最嚴格的臨界值會PKEY_SensorData_LightLevel_Lux。 在此情況下,要報告的下一個樣本讀取應該是 30 lux 或 50 lux。 PKEY_SensorData_LightLevel_Lux_Threshold_AbsoluteDifference一律不會設定PKEY_SensorData_LightLevel_Lux。
當感測器驅動程式報告 Chromaticity x 和 Chromaticity y 色彩元件時,環境光線感測器驅動程式也必須支援PKEY_SensorData_LightChromaticityX、PKEY_SensorData_LightChromaticityY和PKEY_SensorData_LightTemperature_Kelvins閾值。 當符合PKEY_SensorData_LightChromaticityX、PKEY_SensorData_LightChromaticityY或PKEY_SensorData_LightTemperature_Kelvins閾值時,環境光線感測器驅動程式會向感測器類別延伸模塊報告讀取範例。
環境光線感測器驅動程式一律必須在感測器類別延伸模組呼叫 EvtSensorStart 回呼之後立即回報一個樣本讀取,而不論閾值為何。 此範例稱為初始範例讀取。
注意
環境光線感測器驅動程式也必須在IsValid數據欄位變更時向感測器類別延伸模組報告樣本讀取,而不論所設定的臨界值為何。
當PKEY_SensorData_LightLevel_Lux_Threshold_AbsoluteDifference和PKEY_SensorData_LightLevel_Lux設定為0.0f時,驅動程式必須在每個間隔向感測器類別延伸報告樣本讀數。 當PKEY_SensorData_LightChromaticityX 或 PKEY_SensorData_LightChromaticityY 或 PKEY_SensorData_LightTemperature_Kelvins設定為0.0f時,驅動程式必須在每個間隔向感測器類別延伸報告樣本讀數。 每一個間隔報告感測器樣本稱為 感測器樣本串流。
注意
在臨界值模式中,請勿報告PKEY_SensorData_IsValid設為 FALSE 的連續樣本。 換句話說,在臨界值模式中,只會傳送PKEY_SensorData_IsValid切換為 FALSE 的第一個範例。