Beispiel #1
0
        /// <summary>
        /// Deserialize a 32 bits value.
        /// </summary>
        /// <param name="buffer">The buffer containing the serialized data.</param>
        /// <param name="start">The start index in the buffer of the serialized value.</param>
        /// <param name="value">The deserialized value.</param>
        /// <returns>The number of deserialized bytes.</returns>
        protected uint FromBytes(Buffer buffer, uint start, out Converter32 value)
        {
            byte b1, b2, b3, b4;

            uint read = FromBytes(buffer, start, out b1);

            read += FromBytes(buffer, start + read, out b2);
            read += FromBytes(buffer, start + read, out b3);
            read += FromBytes(buffer, start + read, out b4);

            value = new Converter32(b1, b2, b3, b4);

            return(read);
        }
Beispiel #2
0
        /// <summary>
        /// Serialize a 32 bits value.
        /// </summary>
        /// <param name="buffer">The buffer where to serialize the data.</param>
        /// <param name="start">The start index in the buffer where to serialize the data.</param>
        /// <param name="value">The value to serialize.</param>
        /// <returns>The number of serialized bytes.</returns>
        public uint ToBytes(ref Buffer buffer, uint start, Converter32 value)
        {
            CheckSerializationParameters(buffer, start);

            // Resize buffer if necessary
            ResizeBuffer(ref buffer, start + intSize);

            byte[] data = buffer.Data;

            data[start]     = value.Byte1;
            data[start + 1] = value.Byte2;
            data[start + 2] = value.Byte3;
            data[start + 3] = value.Byte4;

            buffer.Progress(start + intSize);

            return(intSize);
        }