public static void GetBytes(_Primitive_ primitive, byte[] bytes, int offset = 0) { unsafe { fixed(byte *ptr = &bytes[offset]) { _Primitive_ *primitivePtr = (_Primitive_ *)ptr; *primitivePtr = primitive; } } }
//BEGIN public static _Primitive_ To_Primitive_(byte[] bytes, int offset = 0) { unsafe { fixed(byte *ptr = &bytes[offset]) { _Primitive_ *primitivePtr = (_Primitive_ *)ptr; return(*primitivePtr); } } }
public static void GetBytes(_Primitive_ primitive, byte[] bytes, ref int offset) { unsafe { fixed(byte *ptr = &bytes[offset]) { offset += sizeof(_Primitive_); _Primitive_ *primitivePtr = (_Primitive_ *)ptr; *primitivePtr = primitive; } } }
public static _Primitive_ To_Primitive_(byte[] bytes, ref int offset) { unsafe { fixed(byte *ptr = &bytes[offset]) { offset += sizeof(_Primitive_); _Primitive_ *primitivePtr = (_Primitive_ *)ptr; return(*primitivePtr); } } }