Exemplo n.º 1
0
        public static Task <List <byte> > MDataInfoSerialiseAsync(ulong mdataInfoH)
        {
            var tcs = new TaskCompletionSource <List <byte> >();
            MDataInfoSerialiseCb callback = null;

            callback = (pVoid, result, bytesPtr, len) => {
                if (result.ErrorCode != 0)
                {
                    tcs.SetException(result.ToException());
                    CallbackManager.Unregister(callback);
                    return;
                }

                tcs.SetResult(bytesPtr.ToList <byte>(len));
                CallbackManager.Unregister(callback);
            };

            CallbackManager.Register(callback);
            NativeBindings.MDataInfoSerialise(Session.AppPtr, mdataInfoH, Session.UserData, callback);

            return(tcs.Task);
        }
Exemplo n.º 2
0
 public static extern void MDataInfoSerialiseNative(IntPtr appPtr, ulong infoHandle, IntPtr self, MDataInfoSerialiseCb callback);
Exemplo n.º 3
0
 public void MDataInfoSerialise(IntPtr appPtr, ulong infoHandle, IntPtr self, MDataInfoSerialiseCb callback)
 {
     MDataInfoSerialiseNative(appPtr, infoHandle, self, callback);
 }