Files
axyz/include/Engine/Network/HybridServer.h
T
2016-02-04 15:49:04 +01:00

30 lines
780 B
C++

#ifndef HybridServer_h__
#define HybridServer_h__
#include "Server.h"
#include <boost/asio/ip/udp.hpp>
class HybridServer : public Server
{
public:
HybridServer();
~HybridServer();
private:
// UDP logic
boost::asio::io_service m_IOService;
std::unique_ptr<boost::asio::ip::udp::socket> m_Socket;
void readFromClients();
void parseClientPing();
void parsePing();
void parseDisconnect();
void parseConnect(Packet & packet);
void parseOnInputCommand(Packet & packet);
void parsePlayerTransform(Packet & packet);
void send(Packet & packet, PlayerDefinition & playerDefinition);
void send(Packet & packet);
int receive(char * data);
PlayerID GetPlayerIDFromEndpoint(boost::asio::ip::udp::endpoint endpoint);
};
#endif