コード例 #1
0
        override protected void ProcessBuffer(byte[] buffer)
        {
            if (!CompareFirstN(buffer, Header, Header.Length))
            {
                throw new GH615MCommunicationError("Wrong Header in GetDeviceInfoCommand");
            }

            var zero           = new String(new[] { '\0' });
            var deviceName     = Encoding.UTF8.GetString(buffer, 3, 9).Replace(zero, "");
            var version        = String.Format("{0}.{1}", Convert.ToString(buffer[26], 16).PadLeft(2, '0'), Convert.ToString(buffer[27], 16).PadLeft(2, '0'));
            var firmware       = Encoding.UTF8.GetString(buffer, 28, 16);
            var name           = Encoding.UTF8.GetString(buffer, 45, 9).Replace(zero, "");
            int waypointsCount = buffer[66];
            int tracksCount    = buffer[67];
            int routesCount    = buffer[68];

            _info = new GH615MDeviceInfo(deviceName, version, firmware, name, waypointsCount, tracksCount, routesCount);
        }
コード例 #2
0
        protected override void ProcessBuffer(byte[] buffer)
        {
            if (!CompareFirstN(buffer, Header, Header.Length))
            {
                throw new GH615MCommunicationError("Wrong Header in GetDeviceInfoCommand");
            }

            var zero = new String(new[] { '\0' });
            var deviceName = Encoding.UTF8.GetString(buffer, 3, 9).Replace(zero, "");
            var version = String.Format("{0}.{1}", Convert.ToString(buffer[26], 16).PadLeft(2, '0'), Convert.ToString(buffer[27], 16).PadLeft(2, '0'));
            var firmware = Encoding.UTF8.GetString(buffer, 28, 16);
            var name = Encoding.UTF8.GetString(buffer, 45, 9).Replace(zero, "");
            int waypointsCount = buffer[66];
            int tracksCount = buffer[67];
            int routesCount = buffer[68];

            _info = new GH615MDeviceInfo(deviceName, version, firmware, name, waypointsCount, tracksCount, routesCount);
        }