Ejemplo n.º 1
0
        public unsafe int PeekNext(NetworkEndPoint local, void *slice, out int length, out NetworkEndPoint from)
        {
            ManagerAccessHandle.Complete();
            IPCData data;

            from   = default(NetworkEndPoint);
            length = 0;

            if (m_IPCQueue.Peek(local.ipc_handle, out data))
            {
                ushort version = m_IPCEndPoints[data.from];

                UnsafeUtility.MemCpy(slice, data.data, data.length);

                length = data.length;
            }

            NetworkEndPoint endpoint;

            if (!TryGetEndPointByHandle(data.from, out endpoint))
            {
                return(-1);
            }
            from = endpoint;

            return(length);
        }
Ejemplo n.º 2
0
        public unsafe int PeekNext(NetworkInterfaceEndPoint local, void *slice, out int length, out NetworkInterfaceEndPoint from)
        {
            ManagerAccessHandle.Complete();
            IPCData data;

            from   = default(NetworkInterfaceEndPoint);
            length = 0;

            if (m_IPCQueue.Peek(*(int *)local.data, out data))
            {
                UnsafeUtility.MemCpy(slice, data.data, data.length);

                length = data.length;
            }

            GetEndPointByHandle(data.from, out from);

            return(length);
        }