| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196 | 
							- using System;
 
- using System.Collections.Generic;
 
- using System.Linq;
 
- using System.Reflection;
 
- using System.Xml.Serialization;
 
- namespace Aitex.Core.RT.SCCore
 
- {
 
-     public class SCValue
 
-     {
 
-         public SystemConfigValue System { get; set; }
 
-  
 
-         private Dictionary<string, Tuple<object, PropertyInfo>> _fieldMap =
 
-             new Dictionary<string, Tuple<object, PropertyInfo>>();
 
-         public SCValue()
 
-         {
 
-              System = new SystemConfigValue();
 
-         }
 
-         public List<string> GetKeys()
 
-         {
 
-             return _fieldMap.Keys.ToList();
 
-         }
 
-         public void SetKeys(List<string> keys)
 
-         {
 
-             _fieldMap.Clear();
 
-             Dictionary<string, object> items = new Dictionary<string, object>();
 
-             PropertyInfo[] property = typeof(SCValue).GetProperties();
 
-             foreach (PropertyInfo fiGroup in property)
 
-             {
 
-                 object objGroup = fiGroup.GetValue(this, null);
 
-                 foreach (PropertyInfo fiItem in objGroup.GetType().GetProperties())
 
-                 {
 
-                     string name = String.Format("{0}_{1}", fiGroup.Name, fiItem.Name);
 
-                     if (keys.Contains(name))
 
-                     {
 
-                         _fieldMap[name] = Tuple.Create(objGroup, fiItem);
 
-                     }
 
-                 }
 
-             }
 
-         }
 
-         public void Update(Dictionary<string, object> result)
 
-         {
 
-             if (result == null)
 
-                 return;
 
-             foreach (KeyValuePair<string, object> item in result)
 
-             {
 
-                 if (_fieldMap.ContainsKey(item.Key))
 
-                 {
 
-                     _fieldMap[item.Key].Item2.SetValue(_fieldMap[item.Key].Item1, item.Value, null);
 
-                 }
 
-             }
 
-         }
 
-         public void Update(string key, string value)
 
-         {
 
-             if (!_fieldMap.ContainsKey(key))
 
-                 return;
 
-             if (_fieldMap[key].Item2.PropertyType == typeof(double))
 
-             {
 
-                 _fieldMap[key].Item2.SetValue(_fieldMap[key].Item1, Convert.ToDouble(value), null);
 
-             }else if (_fieldMap[key].Item2.PropertyType == typeof(int))
 
-             {
 
-                 _fieldMap[key].Item2.SetValue(_fieldMap[key].Item1, Convert.ToInt32(value), null);
 
-             }else if (_fieldMap[key].Item2.PropertyType == typeof(string))
 
-             {
 
-                 _fieldMap[key].Item2.SetValue(_fieldMap[key].Item1, value, null);
 
-             
 
-             }else if (_fieldMap[key].Item2.PropertyType == typeof(bool))
 
-             {
 
-                 _fieldMap[key].Item2.SetValue(_fieldMap[key].Item1, Convert.ToBoolean(value), null);
 
-             }  
 
-         }
 
-         public Dictionary<string, object> GetValue()
 
-         {
 
-             Dictionary<string, object> result = new Dictionary<string, object>();
 
-             foreach (var item in _fieldMap)
 
-             {
 
-                 result[item.Key] = item.Value.Item2.GetValue(item.Value.Item1, null);
 
-  
 
-             }
 
-             return result;
 
-         }
 
-         public class SystemConfigValue
 
-         {
 
-             public int  Language { get; set; }
 
-             public bool IsSimulatorMode { get; set; }
 
-             public int TotalWaferCount { get; set; }
 
-             public bool Blade1Enable { get; set; }
 
-             public bool Blade2Enable { get; set; }
 
-             public int  RobotSpeed { get; set; }
 
-             public int  TimeLimitRobotCommand { get; set; }
 
-             public int  TimeLimitForPickWafer { get; set; }
 
-             public int  TimeLimitForPlaceWafer { get; set; }
 
-             public int  TimeLimitForExchangeWafer { get; set; }
 
-             public int  TimeLimitForAlignWafer { get; set; }
 
-   
 
-             public int  TimeLimitForWID { get; set; }
 
-             public int TimeLimitRobotHome { get; set; }
 
-             public int TimeLimitAlignerHome { get; set; }
 
-             public int TimeLimitLoadportHome { get; set; }
 
-  
 
-             public int  TimeLimitLoadportLoad { get; set; }
 
-             public int  TimeLimitLoadportUnload { get; set; }
 
-             public int  TimeLimitLoadportClamp { get; set; }
 
-             public int TimeLimitReadRFID { get; set; }
 
-             public int TimeLimitWriteRFID { get; set; }
 
-             public int RobotCommunicationToken { get; set; }
 
-             public bool DualBlade1TransferEnable { get; set; }
 
-             public int AlignerCommunicationToken { get; set; }
 
-             public bool EnableReadLaserMarker1 { get; set; }
 
-             public bool EnableReadLaserMarker2 { get; set; }
 
-             public double AlignerReadAngle { get; set; }
 
-             public double AlignerDefaultAngle { get; set; }
 
-  
 
-             public string ReaderJob1Main { get; set; }
 
-             public string ReaderJob1Slave { get; set; }
 
-             public string ReaderJob2Main { get; set; }
 
-             public string ReaderJob2Slave { get; set; }
 
-             public bool EnableAutoLockWhenCassetteArrived { get; set; }
 
-             public bool EnableAutoCarrierIdReadAfterLatch { get; set; }
 
-             public bool EnableAutoDockAfterIdRead { get; set; }
 
-             public bool EnableAutoMappingAfterDock { get; set; }
 
-             public bool EnableAutoUndockAfterProcessComplete { get; set; }
 
-             public bool EnableAutoUndockAfterUndocking { get; set; }
 
-             public bool EnablePauseWhenVerifyIDFailed { get; set; }
 
-            
 
-             public bool ConfigDO32AsBuzzer { get; set; }
 
- 			public bool ShowWaferID { get; set; }
 
-             public bool CycleEnable { get; set; }
 
-             public int CycleCount { get; set; }
 
-             public bool CycleEnableAutoUnload { get; set; }
 
-             public bool CycleEnableAlign { get; set; }
 
-             public bool CycleEnableLaserMarker1 { get; set; }
 
-             public bool CycleEnableLaserMarker2 { get; set; }
 
-             public bool TransferStopImmediately { get; set; }
 
-             public bool OptionLoadportMonitor { get; set; }
 
-             public bool OptionMainternaceMonitor { get; set; }
 
-             public bool OptionSignalTowerMonitor { get; set; }
 
-             public bool FaEnableSpooling { get; set; }
 
-             public string FaConnectionMode { get; set; }
 
-             public string FaLocalIpAddress { get; set; }
 
-             public int FaLocalPortNumber { get; set; }
 
-             public string FaRemoteIpAddress { get; set; }
 
-             public int FaRemotePortNumber { get; set; }
 
-             public double FaT3Timeout { get; set; }
 
-             public double FaT5Timeout { get; set; }
 
-             public double FaT6Timeout { get; set; }
 
-             public double FaT7Timeout { get; set; }
 
-             public double FaT8Timeout { get; set; }
 
-             public double FaLinkTestInterval { get; set; }
 
-             public string FaDefaultCommunicationState { get; set; }
 
-             public string FaDefaultControlState { get; set; }
 
-             public string FaDefaultControlSubState { get; set; }
 
-             public int FaDeviceId { get; set; }
 
-             public string WaferDisplayMode { get; set; }
 
-             public bool EnableAligner { get; set; }
 
-             public bool EnableOcrReader { get; set; }
 
-         }
 
-     }
 
- }
 
 
  |