Aetheria/Assets/Scripts/ServerShared/NIH/LiteNetLib/BaseChannel.cs
hyperion51 e96146b7bb Out with MagicOnion, in with LiteNetLib
Removed MagicOnion
Added LiteNetLib
Created client and server abstractions
Fixed serialization bugs
2020-03-24 14:36:22 +00:00

31 lines
756 B
C#

using System.Collections.Generic;
namespace LiteNetLib
{
internal abstract class BaseChannel
{
public BaseChannel Next;
protected readonly NetPeer Peer;
protected readonly Queue<NetPacket> OutgoingQueue;
protected BaseChannel(NetPeer peer)
{
Peer = peer;
OutgoingQueue = new Queue<NetPacket>(64);
}
public int PacketsInQueue
{
get { return OutgoingQueue.Count; }
}
public void AddToQueue(NetPacket packet)
{
lock (OutgoingQueue)
OutgoingQueue.Enqueue(packet);
}
public abstract void SendNextPackets();
public abstract bool ProcessPacket(NetPacket packet);
}
}