namespace C6 { public class Utils { public static void WriteU16Le(byte[] data, int offset, ushort v) { data[offset + 0] = (byte)(v & 0xFF); data[offset + 1] = (byte)(v >> 8); } public static void WriteU32Le(byte[] data, int offset, uint v) { data[offset + 0] = (byte)(v & 0xFF); data[offset + 1] = (byte)((v & 0xFFFF) >> 8); data[offset + 2] = (byte)((v >> 16) & 0xFF); data[offset + 3] = (byte)((v >> 16) >> 8); } public static ushort ReadU16Le(byte[] data, int offset) { return (ushort)(data[offset] + (ushort)(data[offset + 1] << 8)); } public static uint ReadU32Le(byte[] data, int offset) { return (uint)data[offset + 0] + ((uint)data[offset + 1] << 8) + ((uint)data[offset + 2] << 16) + ((uint)data[offset + 3] << 24); } } }