public override void HandleBytes(byte[] bytes, int offset) { pProgressionDataRequest requestData = new pProgressionDataRequest(); int size = Marshal.SizeOf(requestData); IntPtr ptr = Marshal.AllocHGlobal(size); Marshal.Copy(bytes, offset, ptr, size); requestData = (pProgressionDataRequest)Marshal.PtrToStructure(ptr, requestData.GetType()); Debug.LogWarning("Received progression request (ACK: " + requestData.ack + ")"); OnReceive(requestData); Marshal.FreeHGlobal(ptr); }