public Task <byte[]> GetResultAsync(CancellationToken token = default) { NtEntry handle = Entry.Handle; NtRpcCall call = Handle; token.Register(() => { NtCore.CancelRpcResult(handle, call); }); return(Task.Run(() => { return NtCore.GetRpcResult(handle, call, Span <byte> .Empty).ToArray(); })); }
public void NT_CancelRpcResult(NtEntry entry, NtRpcCall call) { Native_NT_CancelRpcResult(entry, call); }
public RpcCall(NetworkTableEntry entry, NtRpcCall call) { Handle = call; Entry = entry; }
public byte *NT_GetRpcResultTimeout(NtEntry entry, NtRpcCall call, UIntPtr *result_len, double timeout, NtBool *timed_out) { return(Native_NT_GetRpcResultTimeout(entry, call, result_len, timeout, timed_out)); }
private static extern void Native_NT_CancelRpcResult(NtEntry entry, NtRpcCall call);
private static extern byte *Native_NT_GetRpcResultTimeout(NtEntry entry, NtRpcCall call, UIntPtr *result_len, double timeout, NtBool *timed_out);
public byte *NT_GetRpcResult(NtEntry entry, NtRpcCall call, UIntPtr *result_len) { return(Native_NT_GetRpcResult(entry, call, result_len)); }
private static extern byte *Native_NT_GetRpcResult(NtEntry entry, NtRpcCall call, UIntPtr *result_len);
public void NT_PostRpcResponse(NtEntry entry, NtRpcCall call, byte *result, UIntPtr result_len) { Native_NT_PostRpcResponse(entry, call, result, result_len); }
private static extern void Native_NT_PostRpcResponse(NtEntry entry, NtRpcCall call, byte *result, UIntPtr result_len);