ConfigManager.cs 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  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()
  38. {
  39. if (!Directory.Exists(".\\Config\\"))
  40. {
  41. Directory.CreateDirectory(".\\Config\\");
  42. }
  43. SaveCCDCountConfig();
  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. }
  52. else
  53. {
  54. LOG.error("配置文件不存在");
  55. Result = new SaveConfigModel()
  56. {
  57. ShuLiConfigClass = new ShuLiConfigClass(),
  58. CameraConfig = new CameraConfig(),
  59. IsFormulation = false,
  60. };
  61. }
  62. return Result;
  63. }
  64. private void SaveCCDCountConfig()
  65. {
  66. XmlStorage.SerializeToXml(_saveConfigModel, ".\\Config\\CCDCountConfig.xml");
  67. }
  68. }
  69. }