ConfigManager.cs 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. using CCDCount.MODEL.ConfigModel;
  2. using LogClass;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.IO;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using static Org.BouncyCastle.Math.EC.ECCurve;
  10. namespace CCDCount.DLL.Tools
  11. {
  12. public class ConfigManager
  13. {
  14. private ConfigManager() { }
  15. private static ConfigManager instance = new ConfigManager();
  16. public static ConfigManager Instance => instance;
  17. private SaveConfigModel _saveConfigModel;
  18. public SaveConfigModel SaveConfigModel
  19. {
  20. get
  21. {
  22. return _saveConfigModel;
  23. }
  24. set
  25. {
  26. _saveConfigModel = value;
  27. }
  28. }
  29. public void LoadConfigs()
  30. {
  31. _saveConfigModel = GetCCDCountConfig();
  32. if (SaveConfigModel != null)
  33. {
  34. _saveConfigModel.CameraConfig.IsLoadCanfig = true;
  35. }
  36. }
  37. public void SaveConfigs(string FormulationName)
  38. {
  39. if (!Directory.Exists(".\\Config\\"))
  40. {
  41. Directory.CreateDirectory(".\\Config\\");
  42. }
  43. SaveCCDCountConfig(FormulationName);
  44. }
  45. private SaveConfigModel GetCCDCountConfig()
  46. {
  47. SaveConfigModel Result = null;
  48. if (File.Exists(".\\Config\\CCDCountConfig.xml"))
  49. {
  50. Result = XmlStorage.DeserializeFromXml<SaveConfigModel>(".\\Config\\CCDCountConfig.xml");
  51. Result.ShuLiConfigClass.IsLoadCanfig = true;
  52. }
  53. else
  54. {
  55. LOG.error("配置文件不存在");
  56. Result = new SaveConfigModel()
  57. {
  58. ShuLiConfigClass = new ShuLiConfigClass(),
  59. CameraConfig = new CameraConfig(),
  60. IsFormulation = false,
  61. };
  62. }
  63. return Result;
  64. }
  65. private void SaveCCDCountConfig(string FormulationName)
  66. {
  67. _saveConfigModel.ConfigName = FormulationName;
  68. XmlStorage.SerializeToXml(_saveConfigModel, ".\\Config\\CCDCountConfig.xml");
  69. }
  70. }
  71. }