public static unsafe void WriteUShort(byte[] buffer, int offset, ushort data) { AmqpBitConverter.Validate((int)buffer.Length - offset, 2); fixed(byte *numPointer = &buffer[offset]) { byte *numPointer1 = (byte *)(&data); *numPointer = *(numPointer1 + 1); *(numPointer + 1) = *numPointer1; } }
public static unsafe uint ReadUInt(byte[] buffer, int offset, int count) { uint num = 0; AmqpBitConverter.Validate(count, 4); fixed(byte *numPointer = &buffer[offset]) { byte *numPointer1 = (byte *)(&num); *numPointer1 = *(numPointer + 3); *(numPointer1 + 1) = *(numPointer + 2); *(numPointer1 + 2) = *(numPointer + 1); *(numPointer1 + 3) = *numPointer; } return(num); }
public static unsafe ulong ReadULong(byte[] buffer, int offset, int count) { ulong num = 0L; AmqpBitConverter.Validate(count, 8); fixed(byte *numPointer = &buffer[offset]) { byte *numPointer1 = (byte *)(&num); *numPointer1 = *(numPointer + 7); *(numPointer1 + 1) = *(numPointer + 6); *(numPointer1 + 2) = *(numPointer + 5); *(numPointer1 + 3) = *(numPointer + 4); *(numPointer1 + 4) = *(numPointer + 3); *(numPointer1 + 5) = *(numPointer + 2); *(numPointer1 + 6) = *(numPointer + 1); *(numPointer1 + 7) = *numPointer; } return(num); }
public static void WriteUByte(byte[] buffer, int offset, byte data) { AmqpBitConverter.Validate((int)buffer.Length - offset, 1); buffer[offset] = data; }