SC.cs 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. using System;
  2. using System.Collections.Generic;
  3. using Aitex.Core.RT.ConfigCenter;
  4. namespace Aitex.Core.RT.SCCore
  5. {
  6. public static class SC
  7. {
  8. public static ISCManager Manager { set; private get; }
  9. public static T GetValue<T>(string name) where T : struct
  10. {
  11. if (Manager != null)
  12. return Manager.GetItem<SCItem<T>>(name).Value;
  13. return default(T);
  14. }
  15. public static SCItem<T> GetSC<T>(string name) where T: struct
  16. {
  17. if (Manager != null)
  18. return Manager.GetItem<SCItem<T>>(name);
  19. return null;
  20. }
  21. public static SCString GetSCString(string name)
  22. {
  23. if (Manager != null)
  24. return Manager.GetStringItem(name);
  25. return null;
  26. }
  27. public static bool UpdateConfiguration(string groupName, List<ConfigEntry> lstEntry)
  28. {
  29. if (Manager != null)
  30. return Manager.UpdateConfiguration(groupName, lstEntry);
  31. return false;
  32. }
  33. public static string GetConfiguration()
  34. {
  35. if (Manager != null)
  36. return Manager.GetXmlConfig("");
  37. return string.Empty;
  38. }
  39. public static object GetItemValue(string name)
  40. {
  41. if (Manager != null)
  42. return Manager.GetItemValue(name);
  43. return null;
  44. }
  45. public static void SetItemValue(string name, object value)
  46. {
  47. if (Manager != null)
  48. Manager.SetItemValue(name, value);
  49. }
  50. public static bool Testcase()
  51. {
  52. Console.WriteLine("SC test case begin");
  53. if (Manager != null)
  54. {
  55. Manager.GenerateEnumName();
  56. //if (!Manager.Initialize())
  57. //{
  58. // Console.WriteLine("SC test case initialize failed.");
  59. // return false;
  60. //}
  61. Console.WriteLine("SC test case initialize success.");
  62. Console.WriteLine("SC test case GetSC.");
  63. SCItem<bool> scCheckisOnline = SC.GetSC<bool>("PreProcess_Check_Is_Online");
  64. if (scCheckisOnline == null)
  65. {
  66. Console.WriteLine("SC test case GetSC(\"PreProcess_Check_Is_Online\") failed.");
  67. return false;
  68. }
  69. SCItem<bool> scDummy = SC.GetSC<bool>("Dummy");
  70. if (scDummy != null)
  71. {
  72. Console.WriteLine("SC test case GetSC(\"Dummy\") failed.");
  73. return false;
  74. }
  75. SCItem<double> scTranferTemp = SC.GetSC<double>("Transfer.Safe_Transfer_Temperature");
  76. if (scTranferTemp == null)
  77. {
  78. Console.WriteLine("SC test case GetSC(\"Transfer.Safe_Transfer_Temperature\") failed.");
  79. return false;
  80. }
  81. double old = scTranferTemp.Value;
  82. scTranferTemp.Value = 100.10;
  83. Console.WriteLine("SC(\"Transfer.Safe_Transfer_Temperature\") Value change from {0} to {1}", old, scTranferTemp.Value);
  84. }
  85. //Console.WriteLine("SC test case end");
  86. return true;
  87. }
  88. }
  89. }