ReadElementContentAsBinHex() public method

public ReadElementContentAsBinHex ( byte buffer, int index, int count ) : int
buffer byte
index int
count int
return int
Esempio n. 1
0
        /// <summary>
        /// Deserialize the object from a XML reader
        /// </summary>
        /// <param name="reader">   XML reader</param>
        void IXmlSerializable.ReadXml(System.Xml.XmlReader reader)
        {
            MemoryStream memStream;
            BinaryReader binReader;

            byte[] bytes;
            int    iCount;

            if (reader.MoveToContent() != XmlNodeType.Element || reader.LocalName != "MoveHistory")
            {
                throw new SerializationException("Unknown format");
            }
            else
            {
                memStream = new MemoryStream(32768);
                bytes     = new byte[32768];
                do
                {
                    iCount = reader.ReadElementContentAsBinHex(bytes, 0, bytes.Length);
                    if (iCount != 0)
                    {
                        memStream.Write(bytes, 0, iCount);
                    }
                } while (iCount != 0);
                memStream.Seek(0, SeekOrigin.Begin);
                binReader = new BinaryReader(memStream);
                using (binReader) {
                    LoadFromStream(binReader);
                }
            }
        }
Esempio n. 2
0
 public override int ReadElementContentAsBinHex(byte[] buffer, int index, int count)
 {
     CheckAsync();
     return(coreReader.ReadElementContentAsBinHex(buffer, index, count));
 }
Esempio n. 3
0
        public void ReadXml(XmlReader reader)
        {
            short parentNodeId = 0;
            string port = null;
            bool encrypt = false;
            byte[] key = new byte[16];
            bool readElement = false;

            while (!readElement)
            {
                switch (reader.Name)
                {
                    case "ID":
                        id = (short)reader.ReadElementContentAsInt();
                        break;
                    case "nodeType":
                        _cachedType = new sensorType((sensorTypeEnum)reader.ReadElementContentAsInt());
                        break;
                    case "parentNodeID":
                        parentNodeId = (short)reader.ReadElementContentAsInt();
                        break;
                    case "driverPort":
                        port = reader.ReadElementContentAsString();
                        break;
                    case "driverEncrypt":
                        encrypt = reader.ReadElementContentAsBoolean();
                        break;
                    case "key":
                        reader.ReadElementContentAsBinHex(key, 0, 16);
                        break;
                    case "selectedSensor":
                        if (reader.NodeType == XmlNodeType.EndElement)
                            readElement = true;
                        else
                            reader.Read();
                        break;
                    default:
                        reader.Read();
                        break;
                }
            }
            _parentNode = new Node(parentNodeId);
        }