#pragma once #include "DeerCore/Tools/Memory.h" #include "DeerCore/Tools/TypeDefs.h" typedef struct _ENetPeer ENetPeer; namespace Deer { namespace Network { struct ServerSettings; struct DeerClient; void initServer(const ServerSettings&); void shutdownServer(); void flushServerEvents(); enum class DeerClientState : int { NotConnected = 0, Connected = 1 }; struct DeerClient { DeerClientState clientState = DeerClientState::NotConnected; ENetPeer* internalPeer = nullptr; }; struct ServerSettings { uint32_t port = 500; uint32_t maxClients = 32; uint32_t maxOutgoingBand = 0; uint32_t maxIncomingBand = 0; }; } // namespace Network } // namespace Deer