| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | 
							- using Newtonsoft.Json;
 
- using System;
 
- using System.Collections.Generic;
 
- using System.IO;
 
- using System.Linq;
 
- using System.Reflection;
 
- using System.Text;
 
- using System.Threading.Tasks;
 
- namespace MECF.Framework.RT.EquipmentLibrary.HardwareUnits.Common
 
- {
 
-     public class IOCommandReader
 
-     {
 
-         private static Dictionary<string, CommandModelConfig> _commandModelConfigDict = new Dictionary<string, CommandModelConfig>();
 
-         public static CommandModelConfig GetCommandModelConfig(string hardwarePath, string hardwareName)
 
-         {
 
-             CommandModelConfig commandModelConfig = null;
 
-             if (_commandModelConfigDict.Keys.Contains(hardwareName))
 
-             {
 
-                 commandModelConfig = _commandModelConfigDict[hardwareName];
 
-             }
 
-             else
 
-             {
 
-                 commandModelConfig = JsonConvert.DeserializeObject<CommandModelConfig>(File.ReadAllText(ConfigPath.HardwareUnitsPath + $"{hardwarePath}\\{hardwareName}\\IOCommands.json"));
 
-                 _commandModelConfigDict.Add(hardwareName, commandModelConfig);
 
-             }
 
-             return commandModelConfig;
 
-         }
 
-     }
 
-     public class ConfigPath
 
-     {
 
-         public static string HardwareUnitsPath
 
-         { 
 
-             get
 
-             {
 
-                 string path = Assembly.GetExecutingAssembly().Location;
 
-                 FileInfo finfo = new FileInfo(path);
 
-                 return finfo.DirectoryName + @"\\HardwareUnits\";
 
-             }
 
-         }
 
-     }
 
- }
 
 
  |