/// <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); }
/// <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); }