feat: 支持将色彩校准的值写入本地配置文件。
This commit is contained in:
@@ -5,7 +5,7 @@ use tokio::sync::OnceCell;
|
||||
|
||||
use crate::ambient_light::{config, LedStripConfigGroup};
|
||||
|
||||
use super::{Border, SamplePointMapper};
|
||||
use super::{Border, SamplePointMapper, ColorCalibration};
|
||||
|
||||
pub struct ConfigManager {
|
||||
config: Arc<RwLock<LedStripConfigGroup>>,
|
||||
@@ -223,4 +223,15 @@ impl ConfigManager {
|
||||
) -> tokio::sync::watch::Receiver<LedStripConfigGroup> {
|
||||
self.config_update_receiver.clone()
|
||||
}
|
||||
|
||||
pub async fn set_color_calibration(&self, color_calibration: ColorCalibration) -> anyhow::Result<()> {
|
||||
let config = self.config.write().await;
|
||||
|
||||
let mut cloned_config = config.clone();
|
||||
cloned_config.color_calibration = color_calibration;
|
||||
|
||||
drop(config);
|
||||
|
||||
self.update(&cloned_config).await
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user