1 // Copyright 2019 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_CHROMEOS_POWER_AUTO_SCREEN_BRIGHTNESS_MODEL_CONFIG_H_ 6 #define CHROME_BROWSER_CHROMEOS_POWER_AUTO_SCREEN_BRIGHTNESS_MODEL_CONFIG_H_ 7 8 #include <memory> 9 #include <string> 10 #include <vector> 11 12 namespace chromeos { 13 namespace power { 14 namespace auto_screen_brightness { 15 16 // Model customization config. 17 struct ModelConfig { 18 double auto_brightness_als_horizon_seconds = -1.0; 19 bool enabled = false; 20 std::vector<double> log_lux; 21 std::vector<double> brightness; 22 std::string metrics_key; 23 double model_als_horizon_seconds = -1.0; 24 25 ModelConfig(); 26 ModelConfig(const ModelConfig& config); 27 ~ModelConfig(); 28 29 bool operator==(const ModelConfig& config) const; 30 }; 31 32 bool IsValidModelConfig(const ModelConfig& model_config); 33 34 } // namespace auto_screen_brightness 35 } // namespace power 36 } // namespace chromeos 37 38 #endif // CHROME_BROWSER_CHROMEOS_POWER_AUTO_SCREEN_BRIGHTNESS_MODEL_CONFIG_H_ 39