12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- using System;
- using System.Collections.Generic;
- using MECF.Framework.Common.DataCenter;
- using OpenSEMI.ClientBase;
- using CyberX8_Themes.Unity;
- namespace CyberX8_MainPages.Unity
- {
- public static class ModuleManager
- {
- public static event Action<FlashWaferInformation> FlashWaferEvent;
- public static void OnFlashWafer(FlashWaferInformation para)
- {
- FlashWaferEvent?.Invoke(para);
- }
- /// <summary>
- /// all module need init
- /// </summary>
- public static readonly List<string> ModulesID = new List<string>()
- {
- "LP1","LP2","LP3","EfemRobot","Aligner1","SRD1","SRD2","PUF1","PUF2","Dummy1","Dummy2","Loader1"
- };
- public static Dictionary<string, ModuleInfo> ModuleInfos { get; private set; } = new Dictionary<string, ModuleInfo>();
- static ModuleManager()
- {
- string installModules = (string)QueryDataClient.Instance.Service.GetConfig("System.InstalledModules");
- FlashWaferEvent += ModuleManager_FlashWaferEvent;
- }
- private static void ModuleManager_FlashWaferEvent(FlashWaferInformation obj)
- {
- }
- public static void Initialize()
- {
- ModuleInfos.Clear();
- foreach (string moduleID in ModulesID)
- {
- ModuleInfo modInfo = CreateModule(moduleID, true);
- ModuleInfos.Add(moduleID, modInfo);
- }
- }
- public static WaferStatusHandler CreateWaferStatusManager()
- {
- WaferStatusHandler WaferStatusManager;
- WaferStatusImp waferStatusImp = new WaferStatusImp(QueryDataClient.Instance.Service);
- WaferStatusManager = new WaferStatusHandler(waferStatusImp.GetWaferStatus, ModuleManager.ModulesID);
- WaferStatusManager.Handle();
- return WaferStatusManager;
- }
- private static ModuleInfo CreateModule(string p_modid, bool p_install)
- {
- ModuleInfo m_data;
- if (p_install)
- m_data = new ModuleInfo(p_modid, p_install, CreateWaferStatusManager().WaferStatusDic[p_modid], false);
- else
- m_data = new ModuleInfo(p_modid, p_install, null, false);
- return m_data;
- }
- }
- public class FlashWaferInformation
- {
- public string ModuleName { get; set; }
- public int SoltId { get; set; }
- }
- }
|