public void Serialize(IByteWriter writer) { var size = OnSerializingSize(); #if DEBUG if (size > ushort.MaxValue) { throw new ArgumentException("Size can not be higher than max ushort!"); } #endif { var a = (byte)(size >> 8); var b = (byte)size; writer.WriteNext(a); writer.WriteNext(b); } for (var i = 0; i < size; i++) { var b = OnSerializingByte(i); writer.WriteNext(b); } }
public static unsafe void WriteUInt16(this IByteWriter writer, ushort s) { var pointer = &s; var ltBytePnt = (byte *)pointer; writer.WriteNext(ltBytePnt[0]); writer.WriteNext(ltBytePnt[1]); }
public static unsafe void WriteFloat(this IByteWriter writer, float f) { var pointer = &f; var ltBytePnt = (byte *)pointer; writer.WriteNext(ltBytePnt[0]); writer.WriteNext(ltBytePnt[1]); writer.WriteNext(ltBytePnt[2]); writer.WriteNext(ltBytePnt[3]); }
public static unsafe void WriteUInt32(this IByteWriter writer, uint i) { var pointer = &i; var ltBytePnt = (byte *)pointer; writer.WriteNext(ltBytePnt[0]); writer.WriteNext(ltBytePnt[1]); writer.WriteNext(ltBytePnt[2]); writer.WriteNext(ltBytePnt[3]); }
public void Serialize(IByteWriter writer) { writer.WriteNext(theByte); }