public void AddCom(ICom com) { if (com == null) { return; } if (GetCom(com.GetType()) != null) { Log.w("Already Add Component:" + name); return; } //ComWrap wrap = new ComWrap(com); mComponentList.Add(com); mComsNameList.Add(com.GetType().Name); mComponentList.Sort(ComWrapComparison); OnAddCom(com); if (mHasAwake) { AwakeCom(com); } if (mHasStart) { StartCom(com); } }
public void RemoveCom <T>() where T : ICom { for (int i = m_ComponentList.Count - 1; i >= 0; --i) { if (m_ComponentList[i] is T) { ICom com = m_ComponentList[i]; m_ComponentList.RemoveAt(i); m_ComsNameList.RemoveAt(i); if (com is MonoBehaviour) { } else { m_UpdateComList.Remove(com); } OnRemoveCom(com); DestroyCom(com); return; } } }
//单元测试用构造函数 internal GsmModem(ICom com) { _com = com; _com.ReadTimeout = 10000; //读超时时间 发送短信时间的需要 _com.RtsEnable = true; //必须为true 这样串口才能接收到数据 _com.DataReceived += new EventHandler(sp_DataReceived); }
//单元测试用构造函数 internal GsmModem(ICom com) { _com = com; _com.ReadTimeout = 15000; //读超时时间 发送短信时间的需要 _com.RtsEnable = true; //必须为true 这样串口才能接收到数据 _com.DataReceived += new EventHandler(sp_DataReceived); }
public GsmModem(string comPort, int baudRate) { this._GsmCom = new GsmCom(); this._GsmCom.PortName = comPort; this._GsmCom.BaudRate = baudRate; this._GsmCom.ReadTimeout = 100000; this._GsmCom.WriteTimeout = 100000; this._GsmCom.RtsEnable = true; this._GsmCom.DataReceived += new EventHandler(this.sp_DataReceived); }
/// <summary> /// 构造函数 /// </summary> /// <param name="comPort">串口号</param> /// <param name="baudRate">波特率</param> public GsmModem(string comPort, int baudRate) { _com = new MyCom(); _com.PortName = comPort; // _com.BaudRate = baudRate; _com.ReadTimeout = 15000; //读超时时间 发送短信时间的需要 _com.RtsEnable = true; //必须为true 这样串口才能接收到数据 _com.DataReceived += new EventHandler(sp_DataReceived); }
public void RemoveCom(ICom com) { for (int i = mComponentList.Count - 1; i >= 0; --i) { if (mComponentList[i] == com) { mComponentList.RemoveAt(i); mComsNameList.RemoveAt(i); OnRemoveCom(com); DestroyCom(com); return; } } }
protected override void OnAddCom(ICom com) { if (com is IModule) { IModule module = com as IModule; string name = module.GetType().Name; if (mModuleMgrMap.ContainsKey(name)) { Log.e("ModuleMgr Already Add Module:" + name); return; } mModuleMgrMap.Add(name, module); OnModuleRegister(module); } }
private WorkThread() { #if PEAKCAN _CanObj = Peakcan.CreateInstance(); #else _CanObj = ZLGCan.CreateInstance(); #endif _ModuleList = new SortedList <uint, TBaseModule>(); //写线程 Task.Factory.StartNew(WriteCanBusThread, cancelTokenSource.Token); //读线程 Task.Factory.StartNew(ReadCanBusThread, cancelTokenSource2.Token); }
public void RemoveCom <T>() where T : ICom { for (int i = mComponentList.Count - 1; i >= 0; --i) { if (mComponentList[i] is T) { ICom com = mComponentList[i]; mComponentList.RemoveAt(i); mComsNameList.RemoveAt(i); OnRemoveCom(com); DestroyCom(com); return; } } }
private void _createCom() { switch (this.ComType) { case ComType.SerialPort: { Com = new SerialPort(this); break; } case ComType.IPPort: { Com = new IPPort(this); break; } } }
public void AddCom(ICom com) { if (com == null) { return; } if (GetCom(com.GetType()) != null) { Log.w("Already Add Component:" + name); return; } //ComWrap wrap = new ComWrap(com); m_ComponentList.Add(com); m_ComsNameList.Add(com.GetType().Name); if (com is MonoBehaviour) { } else { m_UpdateComList.Add(com); m_UpdateComList.Sort(ComWrapComparison); } OnAddCom(com); if (m_HasAwake) { AwakeCom(com); } if (m_HasStart) { StartCom(com); } }
protected virtual void OnRemoveCom(ICom com) { }
protected virtual void OnAddCom(ICom com) { }
private int ComWrapComparison(ICom a, ICom b) { return(a.ComOrder - b.ComOrder); }
protected void DestroyCom(ICom wrap) { wrap.DestroyCom(); }
protected void StartCom(ICom wrap) { wrap.OnComStart(); }
protected void AwakeCom(ICom wrap) { wrap.AwakeCom(this); }
public Plc(ICom com) { _guid = Guid.NewGuid(); _com = com; }
public byte[] ReadReturnRead(ICom com, int byteSize) { return(com.Read(byteSize + 5)); }
public byte[] ReadReturnWrite(ICom com) { return(com.Read(8)); }