예제 #1
0
        private void ReadReportCallback(HidReport report)
        {
            Log.Debug("Got a ReadReportCallback of length {0}", report.Data.Length);

            _device.ReadReport(ReadReportCallback);

            if (DataReceived == null)
                return;

            var data = report.GetBytes();
            var dataString = _parser.CurrentParser.InterpretPacket(data);
            var args = new DataReceivedEventArgs(dataString);
            DataReceived(this, args);
        }
예제 #2
0
 private void DataDeviceOnDataReceived(object sender, DataReceivedEventArgs dataReceivedEventArgs)
 {
     AddLine(dataReceivedEventArgs.Data);
     if (_logger != null)
         if (_logger.LoggingState == LoggingState.Enabled)
             _logger.Write(dataReceivedEventArgs.Data);
 }
예제 #3
0
        private void ReadCallback(HidDeviceData data)
        {
            Log.Debug("Got a ReadCallback of length {0}", data.Data.Length);

            _device.Read(ReadCallback);

            if (DataReceived == null)
                return;

            var bytes = data.Data;
            var dataString = _parser.CurrentParser.InterpretPacket(bytes);
            var args = new DataReceivedEventArgs(dataString);
            DataReceived(this, args);
        }
예제 #4
0
        private void PortOnDataReceived(object sender, SerialDataReceivedEventArgs serialDataReceivedEventArgs)
        {
            Log.Info("Received {0} bytes", _port.BytesToRead);
            if (!_port.IsOpen)
                return;

            var count = _port.BytesToRead;

            if (count == 0)
                return;

            if (count > 1024)
                count = 1024;

            _port.Read(_receiveBuffer, 0, count);

            if (DataReceived != null)
            {
                var actualData = new byte[count];
                Array.Copy(_receiveBuffer, actualData, count);
                string packet = _handler.CurrentParser.InterpretPacket(actualData);

                var args = new DataReceivedEventArgs(packet);
                DataReceived(this, args);
            }
        }