123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- using System.Collections.Generic;
- using System.Linq;
- using MECF.Framework.Common.DataCenter;
- using OpenSEMI.ClientBase;
- namespace VirgoUI.Client
- {
- public static class ModuleManager
- {
- /// <summary>
- /// all module need init
- /// </summary>
- public static readonly List<string> ModulesID = new List<string>();
- private static readonly List<string> ModuleNames = new List<string>{ "LP1", "LP2", "LP3", "EfemRobot", "Aligner1", "Aligner2", "Cooling1", "Cooling2", "Buffer", "PMA", "PMB", "Flipper" };
-
- public static Dictionary<string, ModuleInfo> ModuleInfos { get; private set; } = new Dictionary<string, ModuleInfo>();
- static ModuleManager()
- {
- string moduleString = (string)QueryDataClient.Instance.Service.GetConfig("System.InstalledModules");
- var modules = moduleString.Split(',');
- foreach(var mod in ModuleNames)
- {
- if(mod.Contains("LP"))
- ModulesID.Add(mod.Trim());
- else if (modules.Contains(mod.Trim()))
- ModulesID.Add(mod.Trim());
- }
- //foreach (var mod in modules)
- // if(ModuleNames.Contains(mod.Trim()))
- // ModulesID.Add(mod.Trim());
- }
- public static void Initialize()
- {
- ModuleInfos.Clear();
- foreach (string moduleID in ModulesID)
- {
- ModuleInfo modInfo = CreateModule(moduleID, true);
- ModuleInfos.Add(moduleID, modInfo);
- }
- }
- private static ModuleInfo CreateModule(string p_modid, bool p_install)
- {
- ModuleInfo m_data;
- if (p_install)
- m_data = new ModuleInfo(p_modid, p_install, VirgoUI.Client.ClientApp.Instance.WaferStatusManager.WaferStatusDic[p_modid], false);
- else
- m_data = new ModuleInfo(p_modid, p_install, null, false);
- return m_data;
- }
- }
- }
|