Loading services/core/java/com/android/server/display/AutomaticBrightnessController.java +16 −2 Original line number Diff line number Diff line Loading @@ -147,6 +147,9 @@ class AutomaticBrightnessController { // A ring buffer containing all of the recent ambient light sensor readings. private AmbientLightRingBuffer mAmbientLightRingBuffer; // A ring buffer containing the light sensor readings for the initial horizon period. private AmbientLightRingBuffer mInitialHorizonAmbientLightRingBuffer; // The handler private AutomaticBrightnessHandler mHandler; Loading Loading @@ -204,7 +207,10 @@ class AutomaticBrightnessController { mScreenAutoBrightnessAdjustmentMaxGamma = autoBrightnessAdjustmentMaxGamma; mHandler = new AutomaticBrightnessHandler(looper); mAmbientLightRingBuffer = new AmbientLightRingBuffer(mLightSensorRate, mAmbientLightHorizon); mAmbientLightRingBuffer = new AmbientLightRingBuffer(mLightSensorRate, mAmbientLightHorizon); mInitialHorizonAmbientLightRingBuffer = new AmbientLightRingBuffer(mLightSensorRate, mAmbientLightHorizon); if (!DEBUG_PRETEND_LIGHT_SENSOR_ABSENT) { mLightSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_LIGHT); Loading Loading @@ -273,6 +279,8 @@ class AutomaticBrightnessController { pw.println(" mLastObservedLuxTime=" + TimeUtils.formatUptime(mLastObservedLuxTime)); pw.println(" mRecentLightSamples=" + mRecentLightSamples); pw.println(" mAmbientLightRingBuffer=" + mAmbientLightRingBuffer); pw.println(" mInitialHorizonAmbientLightRingBuffer=" + mInitialHorizonAmbientLightRingBuffer); pw.println(" mScreenAutoBrightness=" + mScreenAutoBrightness); pw.println(" mScreenAutoBrightnessAdjustment=" + mScreenAutoBrightnessAdjustment); pw.println(" mScreenAutoBrightnessAdjustmentMaxGamma=" + mScreenAutoBrightnessAdjustmentMaxGamma); Loading @@ -295,6 +303,7 @@ class AutomaticBrightnessController { mAmbientLuxValid = !mResetAmbientLuxAfterWarmUpConfig; mRecentLightSamples = 0; mAmbientLightRingBuffer.clear(); mInitialHorizonAmbientLightRingBuffer.clear(); mHandler.removeMessages(MSG_UPDATE_AMBIENT_LUX); mSensorManager.unregisterListener(mLightSensorListener); } Loading @@ -311,6 +320,11 @@ class AutomaticBrightnessController { private void applyLightSensorMeasurement(long time, float lux) { mRecentLightSamples++; // Store all of the light measurements for the intial horizon period. This is to help // diagnose dim wake ups and slow responses in b/27951906. if (time <= mLightSensorEnableTime + mAmbientLightHorizon) { mInitialHorizonAmbientLightRingBuffer.push(time, lux); } mAmbientLightRingBuffer.prune(time - mAmbientLightHorizon); mAmbientLightRingBuffer.push(time, lux); Loading Loading
services/core/java/com/android/server/display/AutomaticBrightnessController.java +16 −2 Original line number Diff line number Diff line Loading @@ -147,6 +147,9 @@ class AutomaticBrightnessController { // A ring buffer containing all of the recent ambient light sensor readings. private AmbientLightRingBuffer mAmbientLightRingBuffer; // A ring buffer containing the light sensor readings for the initial horizon period. private AmbientLightRingBuffer mInitialHorizonAmbientLightRingBuffer; // The handler private AutomaticBrightnessHandler mHandler; Loading Loading @@ -204,7 +207,10 @@ class AutomaticBrightnessController { mScreenAutoBrightnessAdjustmentMaxGamma = autoBrightnessAdjustmentMaxGamma; mHandler = new AutomaticBrightnessHandler(looper); mAmbientLightRingBuffer = new AmbientLightRingBuffer(mLightSensorRate, mAmbientLightHorizon); mAmbientLightRingBuffer = new AmbientLightRingBuffer(mLightSensorRate, mAmbientLightHorizon); mInitialHorizonAmbientLightRingBuffer = new AmbientLightRingBuffer(mLightSensorRate, mAmbientLightHorizon); if (!DEBUG_PRETEND_LIGHT_SENSOR_ABSENT) { mLightSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_LIGHT); Loading Loading @@ -273,6 +279,8 @@ class AutomaticBrightnessController { pw.println(" mLastObservedLuxTime=" + TimeUtils.formatUptime(mLastObservedLuxTime)); pw.println(" mRecentLightSamples=" + mRecentLightSamples); pw.println(" mAmbientLightRingBuffer=" + mAmbientLightRingBuffer); pw.println(" mInitialHorizonAmbientLightRingBuffer=" + mInitialHorizonAmbientLightRingBuffer); pw.println(" mScreenAutoBrightness=" + mScreenAutoBrightness); pw.println(" mScreenAutoBrightnessAdjustment=" + mScreenAutoBrightnessAdjustment); pw.println(" mScreenAutoBrightnessAdjustmentMaxGamma=" + mScreenAutoBrightnessAdjustmentMaxGamma); Loading @@ -295,6 +303,7 @@ class AutomaticBrightnessController { mAmbientLuxValid = !mResetAmbientLuxAfterWarmUpConfig; mRecentLightSamples = 0; mAmbientLightRingBuffer.clear(); mInitialHorizonAmbientLightRingBuffer.clear(); mHandler.removeMessages(MSG_UPDATE_AMBIENT_LUX); mSensorManager.unregisterListener(mLightSensorListener); } Loading @@ -311,6 +320,11 @@ class AutomaticBrightnessController { private void applyLightSensorMeasurement(long time, float lux) { mRecentLightSamples++; // Store all of the light measurements for the intial horizon period. This is to help // diagnose dim wake ups and slow responses in b/27951906. if (time <= mLightSensorEnableTime + mAmbientLightHorizon) { mInitialHorizonAmbientLightRingBuffer.push(time, lux); } mAmbientLightRingBuffer.prune(time - mAmbientLightHorizon); mAmbientLightRingBuffer.push(time, lux); Loading