/// <summary> Raises the data receive event. </summary> /// <param name="e"> Event information to send to registered event handlers. </param> protected internal virtual void OnDataRx(DataRxEventArgs e) { DataRx?.Invoke(this, e); }
/// <summary> /// 数据到达时候的事件处理函数. /// </summary> /// <param name="o">O.</param> /// <param name="e">E.</param> void OnDataRxEvent(object o, DataRxEventArgs e) { if (_isLineBreak(e.Data)) { _index = 0; _preByte = null; if ("nt" == _lineBreak.Type) _list.RemoveAt(_list.Count - 1); if ("length" == _lineBreak.Type) _list.Add(e.Data); DataListReadyEvent(this, new DataListReadyEventArgs(_list)); _list = new List<byte>(); } else { _index++; _preByte = e.Data; _list.Add(e.Data); } }