using CCDCount.MODEL.ConfigModel; using LogClass; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using static Org.BouncyCastle.Math.EC.ECCurve; namespace CCDCount.DLL.Tools { public class ConfigManager { private ConfigManager() { } private static ConfigManager instance = new ConfigManager(); public static ConfigManager Instance => instance; private SaveConfigModel _saveConfigModel; public SaveConfigModel SaveConfigModel { get { return _saveConfigModel; } set { _saveConfigModel = value; } } public void LoadConfigs() { _saveConfigModel = GetCCDCountConfig(); if (SaveConfigModel != null) { _saveConfigModel.CameraConfig.IsLoadCanfig = true; } } public void SaveConfigs(string FormulationName) { if (!Directory.Exists(".\\Config\\")) { Directory.CreateDirectory(".\\Config\\"); } SaveCCDCountConfig(FormulationName); } private SaveConfigModel GetCCDCountConfig() { SaveConfigModel Result = null; if (File.Exists(".\\Config\\CCDCountConfig.xml")) { Result = XmlStorage.DeserializeFromXml(".\\Config\\CCDCountConfig.xml"); Result.ShuLiConfigClass.IsLoadCanfig = true; } else { LOG.error("配置文件不存在"); Result = new SaveConfigModel() { ShuLiConfigClass = new ShuLiConfigClass(), CameraConfig = new CameraConfig(), IsFormulation = false, }; } return Result; } private void SaveCCDCountConfig(string FormulationName) { _saveConfigModel.ConfigName = FormulationName; XmlStorage.SerializeToXml(_saveConfigModel, ".\\Config\\CCDCountConfig.xml"); } } }