Example #1
0
 /// <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);
 }
Example #2
0
 /// <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);
     }
 }