35 lines
708 B
C++
35 lines
708 B
C++
#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
|