1595d5899Sopenharmony_ci/* 2595d5899Sopenharmony_ci * Copyright (c) 2023-2023 Huawei Device Co., Ltd. 3595d5899Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4595d5899Sopenharmony_ci * you may not use this file except in compliance with the License. 5595d5899Sopenharmony_ci * You may obtain a copy of the License at 6595d5899Sopenharmony_ci * 7595d5899Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8595d5899Sopenharmony_ci * 9595d5899Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10595d5899Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11595d5899Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12595d5899Sopenharmony_ci * See the License for the specific language governing permissions and 13595d5899Sopenharmony_ci * limitations under the License. 14595d5899Sopenharmony_ci */ 15595d5899Sopenharmony_ci 16595d5899Sopenharmony_ci#include "calculation_manager.h" 17595d5899Sopenharmony_ci 18595d5899Sopenharmony_ci#include <algorithm> 19595d5899Sopenharmony_ci#include <cmath> 20595d5899Sopenharmony_ci#include <iostream> 21595d5899Sopenharmony_ci#include <sstream> 22595d5899Sopenharmony_ci#include <string> 23595d5899Sopenharmony_ci 24595d5899Sopenharmony_ci#include "display_log.h" 25595d5899Sopenharmony_ci 26595d5899Sopenharmony_cinamespace OHOS { 27595d5899Sopenharmony_cinamespace DisplayPowerMgr { 28595d5899Sopenharmony_ci 29595d5899Sopenharmony_cinamespace { 30595d5899Sopenharmony_ciconstexpr float DEFAULT_NO_OFFSET_LUX = -1.0f; 31595d5899Sopenharmony_ciconstexpr float DEFAULT_OFFSET_BRIGHTNESS = 0.0f; 32595d5899Sopenharmony_ciconstexpr float DEFAULT_OFFSET_DELTA = 0.0f; 33595d5899Sopenharmony_ciconstexpr float SMALL_VALUE = 1e-6f; 34595d5899Sopenharmony_ciconstexpr float DEFAULT_OFFSET_RATIO = 1.0f; 35595d5899Sopenharmony_ciconstexpr float MIN_OFFSET_RATIO = 0.0f; 36595d5899Sopenharmony_ciconstexpr float MIN_DEFAULT_BRIGHTNESS = 4.0f; 37595d5899Sopenharmony_ciconstexpr float MAX_DEFAULT_BRIGHTNESS = 255.0f; 38595d5899Sopenharmony_ci 39595d5899Sopenharmony_ciconstexpr float AMBIENT_VALID_MAX_LUX = 40000; 40595d5899Sopenharmony_ciconstexpr float AMBIENT_VALID_MIN_LUX = 0.0f; 41595d5899Sopenharmony_ci} // namespace 42595d5899Sopenharmony_ci 43595d5899Sopenharmony_civoid BrightnessCalculationManager::InitParameters() 44595d5899Sopenharmony_ci{ 45595d5899Sopenharmony_ci mBrightnessCalculationCurve.InitParameters(); 46595d5899Sopenharmony_ci} 47595d5899Sopenharmony_ci 48595d5899Sopenharmony_cifloat BrightnessCalculationManager::GetInterpolatedValue(float lux) 49595d5899Sopenharmony_ci{ 50595d5899Sopenharmony_ci float valueInterp = GetInterpolatedBrightenssLevel(mPosBrightness, lux) / MAX_DEFAULT_BRIGHTNESS; 51595d5899Sopenharmony_ci DISPLAY_HILOGI(FEAT_BRIGHTNESS, "GetInterpolatedValue lux=%{public}f, valueInterp=%{public}f, "\ 52595d5899Sopenharmony_ci " mPosBrightness=%{public}f", lux, valueInterp, mPosBrightness); 53595d5899Sopenharmony_ci return valueInterp; 54595d5899Sopenharmony_ci} 55595d5899Sopenharmony_ci 56595d5899Sopenharmony_cifloat BrightnessCalculationManager::GetInterpolatedBrightenssLevel(float positionBrightness, float lux) 57595d5899Sopenharmony_ci{ 58595d5899Sopenharmony_ci float posBrightness = positionBrightness; 59595d5899Sopenharmony_ci UpdateCurveAmbientLux(lux); 60595d5899Sopenharmony_ci UpdateDefaultBrightness(lux); 61595d5899Sopenharmony_ci 62595d5899Sopenharmony_ci if (mLastLuxDefaultBrightness <= DEFAULT_OFFSET_BRIGHTNESS && mPosBrightness != DEFAULT_OFFSET_BRIGHTNESS) { 63595d5899Sopenharmony_ci posBrightness = DEFAULT_OFFSET_BRIGHTNESS; 64595d5899Sopenharmony_ci ResetDefaultBrightnessOffset(); 65595d5899Sopenharmony_ci } 66595d5899Sopenharmony_ci 67595d5899Sopenharmony_ci float offsetBrightness = mDefaultBrightnessFromLux; 68595d5899Sopenharmony_ci if (IsDefaultBrightnessMode(posBrightness)) { 69595d5899Sopenharmony_ci offsetBrightness = mDefaultBrightnessFromLux; 70595d5899Sopenharmony_ci } else { 71595d5899Sopenharmony_ci offsetBrightness = GetOffsetLevel(mStartLuxDefaultBrightness, 72595d5899Sopenharmony_ci mDefaultBrightnessFromLux, posBrightness, mDelta); 73595d5899Sopenharmony_ci } 74595d5899Sopenharmony_ci 75595d5899Sopenharmony_ci mLastLuxDefaultBrightness = mDefaultBrightnessFromLux; 76595d5899Sopenharmony_ci mOffsetBrightnessLast = offsetBrightness; 77595d5899Sopenharmony_ci DISPLAY_HILOGI(FEAT_BRIGHTNESS, "GetLevel lux=%{public}f, offsetBrightness=%{public}f, default=%{public}f", 78595d5899Sopenharmony_ci lux, offsetBrightness, mDefaultBrightnessFromLux); 79595d5899Sopenharmony_ci return offsetBrightness; 80595d5899Sopenharmony_ci} 81595d5899Sopenharmony_ci 82595d5899Sopenharmony_civoid BrightnessCalculationManager::UpdateDefaultBrightness(float lux) 83595d5899Sopenharmony_ci{ 84595d5899Sopenharmony_ci float defaultBrightness = GetCurrentBrightness(lux); 85595d5899Sopenharmony_ci mDefaultBrightnessFromLux = defaultBrightness; 86595d5899Sopenharmony_ci} 87595d5899Sopenharmony_ci 88595d5899Sopenharmony_cifloat BrightnessCalculationManager::GetCurrentBrightness(float lux) 89595d5899Sopenharmony_ci{ 90595d5899Sopenharmony_ci return mBrightnessCalculationCurve.GetCurrentBrightness(lux); 91595d5899Sopenharmony_ci} 92595d5899Sopenharmony_ci 93595d5899Sopenharmony_civoid BrightnessCalculationManager::UpdateParaFromReboot() 94595d5899Sopenharmony_ci{ 95595d5899Sopenharmony_ci mLastLuxDefaultBrightness = mDefaultBrightnessFromLux; 96595d5899Sopenharmony_ci mStartLuxDefaultBrightness = mDefaultBrightnessFromLux; 97595d5899Sopenharmony_ci mOffsetBrightnessLast = mDefaultBrightnessFromLux; 98595d5899Sopenharmony_ci mIsReboot = false; 99595d5899Sopenharmony_ci} 100595d5899Sopenharmony_ci 101595d5899Sopenharmony_cibool BrightnessCalculationManager::IsDefaultBrightnessMode(float positionBrightness) 102595d5899Sopenharmony_ci{ 103595d5899Sopenharmony_ci if (positionBrightness == DEFAULT_OFFSET_DELTA) { 104595d5899Sopenharmony_ci return true; 105595d5899Sopenharmony_ci } 106595d5899Sopenharmony_ci return false; 107595d5899Sopenharmony_ci} 108595d5899Sopenharmony_ci 109595d5899Sopenharmony_cifloat BrightnessCalculationManager::GetOffsetLevel(float brightnessStartOrig, float brightnessEndOrig, 110595d5899Sopenharmony_ci float brightnessStartNew, float delta) 111595d5899Sopenharmony_ci{ 112595d5899Sopenharmony_ci float brightenRatio = 1.0f; 113595d5899Sopenharmony_ci float darkenRatio = 1.0f; 114595d5899Sopenharmony_ci float deltaStart = delta; 115595d5899Sopenharmony_ci if (brightnessStartOrig < brightnessEndOrig) { 116595d5899Sopenharmony_ci if (deltaStart > DEFAULT_OFFSET_DELTA) { 117595d5899Sopenharmony_ci darkenRatio = GetDefaultBrightenOffsetBrightenRaio(brightnessStartOrig, brightnessEndOrig, 118595d5899Sopenharmony_ci brightnessStartNew, deltaStart); 119595d5899Sopenharmony_ci } 120595d5899Sopenharmony_ci if (deltaStart < DEFAULT_OFFSET_DELTA) { 121595d5899Sopenharmony_ci brightenRatio = GetDefaultDarkenOffsetBrightenRatio(brightnessStartOrig, brightnessEndOrig, 122595d5899Sopenharmony_ci brightnessStartNew, deltaStart); 123595d5899Sopenharmony_ci } 124595d5899Sopenharmony_ci } 125595d5899Sopenharmony_ci if (brightnessStartOrig > brightnessEndOrig) { 126595d5899Sopenharmony_ci if (deltaStart < DEFAULT_OFFSET_DELTA) { 127595d5899Sopenharmony_ci darkenRatio = GetDefaultDarkenOffsetDarkenRatio(brightnessStartOrig, brightnessEndOrig, 128595d5899Sopenharmony_ci brightnessStartNew, deltaStart); 129595d5899Sopenharmony_ci } 130595d5899Sopenharmony_ci if (deltaStart > DEFAULT_OFFSET_DELTA) { 131595d5899Sopenharmony_ci brightenRatio = GetDefaultBrightenOffsetDarkenRatio(brightnessStartOrig, brightnessEndOrig, 132595d5899Sopenharmony_ci brightnessStartNew); 133595d5899Sopenharmony_ci } 134595d5899Sopenharmony_ci } 135595d5899Sopenharmony_ci float tempDeltaNew = deltaStart * brightenRatio * darkenRatio; 136595d5899Sopenharmony_ci 137595d5899Sopenharmony_ci float brightnessAndDelta = brightnessEndOrig + tempDeltaNew; 138595d5899Sopenharmony_ci float offsetBrightnessTemp = (brightnessAndDelta > MIN_DEFAULT_BRIGHTNESS 139595d5899Sopenharmony_ci ? brightnessAndDelta : MIN_DEFAULT_BRIGHTNESS); 140595d5899Sopenharmony_ci float offsetBrightness = (offsetBrightnessTemp < MAX_DEFAULT_BRIGHTNESS 141595d5899Sopenharmony_ci ? offsetBrightnessTemp : MAX_DEFAULT_BRIGHTNESS); 142595d5899Sopenharmony_ci DISPLAY_HILOGI(FEAT_BRIGHTNESS, "GetOffsetLevel tempDeltaNew=%{public}f, deltaStart=%{public}f, "\ 143595d5899Sopenharmony_ci " brightenRatio=%{public}f, darkenRatio=%{public}f", tempDeltaNew, deltaStart, brightenRatio, darkenRatio); 144595d5899Sopenharmony_ci return offsetBrightness; 145595d5899Sopenharmony_ci} 146595d5899Sopenharmony_ci 147595d5899Sopenharmony_cifloat BrightnessCalculationManager::GetDefaultBrightenOffsetBrightenRaio(float brightnessStartOrig, 148595d5899Sopenharmony_ci float brightnessEndOrig, float brightnessStartNew, float deltaStart) 149595d5899Sopenharmony_ci{ 150595d5899Sopenharmony_ci float brightenRatio; 151595d5899Sopenharmony_ci if (std::abs(MAX_DEFAULT_BRIGHTNESS - brightnessStartOrig) < SMALL_VALUE) { 152595d5899Sopenharmony_ci brightenRatio = DEFAULT_OFFSET_RATIO; 153595d5899Sopenharmony_ci } else { 154595d5899Sopenharmony_ci brightenRatio = (MAX_DEFAULT_BRIGHTNESS - brightnessEndOrig) 155595d5899Sopenharmony_ci / (MAX_DEFAULT_BRIGHTNESS - brightnessStartOrig); 156595d5899Sopenharmony_ci } 157595d5899Sopenharmony_ci 158595d5899Sopenharmony_ci float offsetBrightnessTmp = ((1 - offsetBrightenAlphaRight) 159595d5899Sopenharmony_ci * std::max(brightnessEndOrig, brightnessStartNew)) 160595d5899Sopenharmony_ci + (offsetBrightenAlphaRight * ((deltaStart * brightenRatio) + brightnessEndOrig)); 161595d5899Sopenharmony_ci if (std::abs(deltaStart) < SMALL_VALUE) { 162595d5899Sopenharmony_ci brightenRatio = DEFAULT_OFFSET_RATIO; 163595d5899Sopenharmony_ci } else { 164595d5899Sopenharmony_ci brightenRatio = (offsetBrightnessTmp - brightnessEndOrig) / deltaStart; 165595d5899Sopenharmony_ci } 166595d5899Sopenharmony_ci if (brightenRatio < MIN_OFFSET_RATIO) { 167595d5899Sopenharmony_ci brightenRatio = MIN_OFFSET_RATIO; 168595d5899Sopenharmony_ci } 169595d5899Sopenharmony_ci return brightenRatio; 170595d5899Sopenharmony_ci} 171595d5899Sopenharmony_ci 172595d5899Sopenharmony_ci 173595d5899Sopenharmony_cifloat BrightnessCalculationManager::GetAmbientOffsetLux() 174595d5899Sopenharmony_ci{ 175595d5899Sopenharmony_ci float lux = static_cast<int>(mOffsetLux); 176595d5899Sopenharmony_ci return lux; 177595d5899Sopenharmony_ci} 178595d5899Sopenharmony_ci 179595d5899Sopenharmony_cifloat BrightnessCalculationManager::GetBrightenOffsetNoValidBrightenLux(float lux) 180595d5899Sopenharmony_ci{ 181595d5899Sopenharmony_ci float noValidBrightenLuxTh = AMBIENT_VALID_MAX_LUX; 182595d5899Sopenharmony_ci return noValidBrightenLuxTh; 183595d5899Sopenharmony_ci} 184595d5899Sopenharmony_ci 185595d5899Sopenharmony_cifloat BrightnessCalculationManager::GetDefaultDarkenOffsetBrightenRatio(float brightnessStartOrig, 186595d5899Sopenharmony_ci float brightnessEndOrig, float brightnessStartNew, float deltaStart) 187595d5899Sopenharmony_ci{ 188595d5899Sopenharmony_ci float brightenRatio; 189595d5899Sopenharmony_ci if (std::abs(MAX_DEFAULT_BRIGHTNESS - brightnessStartOrig) < SMALL_VALUE) { 190595d5899Sopenharmony_ci brightenRatio = DEFAULT_OFFSET_RATIO; 191595d5899Sopenharmony_ci } else { 192595d5899Sopenharmony_ci brightenRatio = (MAX_DEFAULT_BRIGHTNESS - brightnessEndOrig) 193595d5899Sopenharmony_ci / (MAX_DEFAULT_BRIGHTNESS - brightnessStartOrig); 194595d5899Sopenharmony_ci } 195595d5899Sopenharmony_ci 196595d5899Sopenharmony_ci if (brightenRatio < MIN_OFFSET_RATIO) { 197595d5899Sopenharmony_ci brightenRatio = MIN_OFFSET_RATIO; 198595d5899Sopenharmony_ci } 199595d5899Sopenharmony_ci return brightenRatio; 200595d5899Sopenharmony_ci} 201595d5899Sopenharmony_ci 202595d5899Sopenharmony_cifloat BrightnessCalculationManager::GetDefaultDarkenOffsetDarkenRatio(float brightnessStartOrig, 203595d5899Sopenharmony_ci float brightnessEndOrig, float brightnessStartNew, float deltaStart) 204595d5899Sopenharmony_ci{ 205595d5899Sopenharmony_ci float darkenRatio; 206595d5899Sopenharmony_ci if (std::abs(brightnessStartOrig - MIN_DEFAULT_BRIGHTNESS) < SMALL_VALUE) { 207595d5899Sopenharmony_ci darkenRatio = DEFAULT_OFFSET_RATIO; 208595d5899Sopenharmony_ci } else { 209595d5899Sopenharmony_ci darkenRatio = (brightnessEndOrig - MIN_DEFAULT_BRIGHTNESS) 210595d5899Sopenharmony_ci / (brightnessStartOrig - MIN_DEFAULT_BRIGHTNESS); 211595d5899Sopenharmony_ci } 212595d5899Sopenharmony_ci float offsetBrightnessTmp = ((1 - offsetDarkenAlphaLeft) * std::min(brightnessEndOrig, 213595d5899Sopenharmony_ci brightnessStartNew)) + (offsetDarkenAlphaLeft * ((deltaStart * darkenRatio) + brightnessEndOrig)); 214595d5899Sopenharmony_ci if (std::abs(deltaStart) < SMALL_VALUE) { 215595d5899Sopenharmony_ci darkenRatio = DEFAULT_OFFSET_RATIO; 216595d5899Sopenharmony_ci } else { 217595d5899Sopenharmony_ci darkenRatio = (offsetBrightnessTmp - brightnessEndOrig) / deltaStart; 218595d5899Sopenharmony_ci } 219595d5899Sopenharmony_ci if (darkenRatio < MIN_OFFSET_RATIO) { 220595d5899Sopenharmony_ci darkenRatio = MIN_OFFSET_RATIO; 221595d5899Sopenharmony_ci } 222595d5899Sopenharmony_ci return darkenRatio; 223595d5899Sopenharmony_ci} 224595d5899Sopenharmony_ci 225595d5899Sopenharmony_cifloat BrightnessCalculationManager::GetDefaultBrightenOffsetDarkenRatio(float brightnessStartOrig, 226595d5899Sopenharmony_ci float brightnessEndOrig, float brightnessStartNew) 227595d5899Sopenharmony_ci{ 228595d5899Sopenharmony_ci float darkenRatio; 229595d5899Sopenharmony_ci if (std::abs(brightnessStartOrig) < SMALL_VALUE) { 230595d5899Sopenharmony_ci darkenRatio = DEFAULT_OFFSET_RATIO; 231595d5899Sopenharmony_ci } else { 232595d5899Sopenharmony_ci float darkenRatioTmp = static_cast<float>(pow(brightnessEndOrig / brightnessStartOrig, 233595d5899Sopenharmony_ci offsetBrightenRatioLeft)); 234595d5899Sopenharmony_ci darkenRatio = (offsetBrightenAlphaLeft * brightnessEndOrig / brightnessStartOrig) 235595d5899Sopenharmony_ci + ((1 - offsetBrightenAlphaLeft) * darkenRatioTmp); 236595d5899Sopenharmony_ci } 237595d5899Sopenharmony_ci return darkenRatio; 238595d5899Sopenharmony_ci} 239595d5899Sopenharmony_ci 240595d5899Sopenharmony_civoid BrightnessCalculationManager::UpdateBrightnessOffset(float posBrightness, float lux) 241595d5899Sopenharmony_ci{ 242595d5899Sopenharmony_ci if (lux < AMBIENT_VALID_MIN_LUX || lux > AMBIENT_VALID_MAX_LUX) { 243595d5899Sopenharmony_ci return; 244595d5899Sopenharmony_ci } 245595d5899Sopenharmony_ci if (std::abs(posBrightness) < SMALL_VALUE) { 246595d5899Sopenharmony_ci ResetDefaultBrightnessOffset(); 247595d5899Sopenharmony_ci return; 248595d5899Sopenharmony_ci } 249595d5899Sopenharmony_ci mOffsetLux = lux; 250595d5899Sopenharmony_ci mStartLuxDefaultBrightness = GetCurrentBrightness(lux); 251595d5899Sopenharmony_ci mPosBrightness = posBrightness; 252595d5899Sopenharmony_ci mDelta = mPosBrightness - mStartLuxDefaultBrightness; 253595d5899Sopenharmony_ci DISPLAY_HILOGI(FEAT_BRIGHTNESS, "UpdateBrightnessOffset lux=%{public}f, mDelta=%{public}f, "\ 254595d5899Sopenharmony_ci "mPosBrightness=%{public}f", lux, mDelta, mPosBrightness); 255595d5899Sopenharmony_ci} 256595d5899Sopenharmony_ci 257595d5899Sopenharmony_civoid BrightnessCalculationManager::ResetDefaultBrightnessOffset() 258595d5899Sopenharmony_ci{ 259595d5899Sopenharmony_ci mOffsetLux = DEFAULT_NO_OFFSET_LUX; 260595d5899Sopenharmony_ci mDelta = DEFAULT_OFFSET_DELTA; 261595d5899Sopenharmony_ci 262595d5899Sopenharmony_ci mOffsetBrightnessLast = DEFAULT_OFFSET_BRIGHTNESS; 263595d5899Sopenharmony_ci mLastLuxDefaultBrightness = DEFAULT_OFFSET_BRIGHTNESS; 264595d5899Sopenharmony_ci mStartLuxDefaultBrightness = DEFAULT_OFFSET_BRIGHTNESS; 265595d5899Sopenharmony_ci mPosBrightness = DEFAULT_OFFSET_BRIGHTNESS; 266595d5899Sopenharmony_ci DISPLAY_HILOGI(FEAT_BRIGHTNESS, "ResetDefaultBrightnessOffset"); 267595d5899Sopenharmony_ci} 268595d5899Sopenharmony_ci 269595d5899Sopenharmony_civoid BrightnessCalculationManager::UpdateCurveAmbientLux(float lux) 270595d5899Sopenharmony_ci{ 271595d5899Sopenharmony_ci if (mCurveLux != lux) { 272595d5899Sopenharmony_ci mBrightnessCalculationCurve.UpdateCurveAmbientLux(lux); 273595d5899Sopenharmony_ci mCurveLux = lux; 274595d5899Sopenharmony_ci } 275595d5899Sopenharmony_ci} 276595d5899Sopenharmony_ci 277595d5899Sopenharmony_civoid BrightnessCalculationManager::SetGameModeEnable(bool isGameCurveEnable) 278595d5899Sopenharmony_ci{ 279595d5899Sopenharmony_ci mIsGameCurveEnable = isGameCurveEnable; 280595d5899Sopenharmony_ci} 281595d5899Sopenharmony_ci 282595d5899Sopenharmony_civoid BrightnessCalculationManager::SetCameraModeEnable(bool isCameraCurveEnable) 283595d5899Sopenharmony_ci{ 284595d5899Sopenharmony_ci mIsCameraCurveEnable = isCameraCurveEnable; 285595d5899Sopenharmony_ci} 286595d5899Sopenharmony_ci 287595d5899Sopenharmony_civoid BrightnessCalculationManager::UpdateCurrentUserId(int userId) 288595d5899Sopenharmony_ci{ 289595d5899Sopenharmony_ci mCurrentUserId = userId; 290595d5899Sopenharmony_ci mBrightnessCalculationCurve.UpdateCurrentUserId(userId); 291595d5899Sopenharmony_ci} 292595d5899Sopenharmony_ci 293595d5899Sopenharmony_civoid BrightnessCalculationManager::ResetOffsetFromHumanFactor(bool isOffsetResetEnable, int minOffsetBrightness, 294595d5899Sopenharmony_ci int maxOffsetBrightness) 295595d5899Sopenharmony_ci{ 296595d5899Sopenharmony_ci if (isOffsetResetEnable && std::abs(mPosBrightness) > SMALL_VALUE) { 297595d5899Sopenharmony_ci if (mPosBrightness < minOffsetBrightness) { 298595d5899Sopenharmony_ci mPosBrightness = minOffsetBrightness; 299595d5899Sopenharmony_ci mOffsetBrightnessLast = minOffsetBrightness; 300595d5899Sopenharmony_ci mDelta = mPosBrightness - mStartLuxDefaultBrightness; 301595d5899Sopenharmony_ci } 302595d5899Sopenharmony_ci if (mPosBrightness > maxOffsetBrightness) { 303595d5899Sopenharmony_ci mPosBrightness = maxOffsetBrightness; 304595d5899Sopenharmony_ci mOffsetBrightnessLast = maxOffsetBrightness; 305595d5899Sopenharmony_ci mDelta = mPosBrightness - mStartLuxDefaultBrightness; 306595d5899Sopenharmony_ci } 307595d5899Sopenharmony_ci } 308595d5899Sopenharmony_ci} 309595d5899Sopenharmony_ci 310595d5899Sopenharmony_ciint BrightnessCalculationManager::GetDisplayIdWithDisplayMode(int displayMode) 311595d5899Sopenharmony_ci{ 312595d5899Sopenharmony_ci return mBrightnessCalculationCurve.GetDisplayIdWithDisplayMode(displayMode); 313595d5899Sopenharmony_ci} 314595d5899Sopenharmony_ci 315595d5899Sopenharmony_ciint BrightnessCalculationManager::GetSensorIdWithDisplayMode(int displayMode) 316595d5899Sopenharmony_ci{ 317595d5899Sopenharmony_ci return mBrightnessCalculationCurve.GetSensorIdWithDisplayMode(displayMode); 318595d5899Sopenharmony_ci} 319595d5899Sopenharmony_ci 320595d5899Sopenharmony_ciint BrightnessCalculationManager::GetDisplayIdWithFoldstatus(int foldStatus) 321595d5899Sopenharmony_ci{ 322595d5899Sopenharmony_ci return mBrightnessCalculationCurve.GetDisplayIdWithFoldstatus(foldStatus); 323595d5899Sopenharmony_ci} 324595d5899Sopenharmony_ci 325595d5899Sopenharmony_ciint BrightnessCalculationManager::GetSensorIdWithFoldstatus(int foldStatus) 326595d5899Sopenharmony_ci{ 327595d5899Sopenharmony_ci return mBrightnessCalculationCurve.GetSensorIdWithFoldstatus(foldStatus); 328595d5899Sopenharmony_ci} 329595d5899Sopenharmony_ci} // namespace DisplayPowerMgr 330595d5899Sopenharmony_ci} // namespace OHOS