public void Write(float value) { BitFloat bits = new BitFloat(value); if (BitConverter.IsLittleEndian) { Buffer[Position] = bits.ByteOffset3; Buffer[Position + 1] = bits.ByteOffset2; Buffer[Position + 2] = bits.ByteOffset1; Buffer[Position + 3] = bits.ByteOffset0; } else { Buffer[Position] = bits.ByteOffset0; Buffer[Position + 1] = bits.ByteOffset1; Buffer[Position + 2] = bits.ByteOffset2; Buffer[Position + 3] = bits.ByteOffset3; } Position += sizeof(float); }
public float ReadFloat() { BitFloat bits = new BitFloat(); if (BitConverter.IsLittleEndian) { bits.ByteOffset3 = Buffer[Position]; bits.ByteOffset2 = Buffer[Position + 1]; bits.ByteOffset1 = Buffer[Position + 2]; bits.ByteOffset0 = Buffer[Position + 3]; } else { bits.ByteOffset0 = Buffer[Position]; bits.ByteOffset1 = Buffer[Position + 1]; bits.ByteOffset2 = Buffer[Position + 2]; bits.ByteOffset3 = Buffer[Position + 3]; } Position += sizeof(float); return(bits.Value); }