Made Network.h's Start() and Update pure virtual and removed cpp.
Removed unnecessary code from NetworkDefinitions.h. Renamed sizeOfPackage to sizeOfPacket in Packet.cpp.
This commit is contained in:
@@ -5,6 +5,7 @@
|
|||||||
#include <ctime>
|
#include <ctime>
|
||||||
|
|
||||||
#include <glm/common.hpp>
|
#include <glm/common.hpp>
|
||||||
|
#include <boost/asio.hpp>
|
||||||
|
|
||||||
#include "Network/MessageType.h"
|
#include "Network/MessageType.h"
|
||||||
#include "Network/NetworkDefinitions.h"
|
#include "Network/NetworkDefinitions.h"
|
||||||
@@ -21,8 +22,8 @@ class Client : public Network
|
|||||||
public:
|
public:
|
||||||
Client();
|
Client();
|
||||||
~Client();
|
~Client();
|
||||||
void Start(World* world, EventBroker* eventBroker);
|
void Start(World* world, EventBroker* eventBroker) override;
|
||||||
void Update();
|
void Update() override;
|
||||||
void Close();
|
void Close();
|
||||||
private:
|
private:
|
||||||
// Assio UDP logic
|
// Assio UDP logic
|
||||||
|
|||||||
@@ -8,12 +8,9 @@
|
|||||||
class Network
|
class Network
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
Network();
|
virtual ~Network() { };
|
||||||
~Network();
|
virtual void Start(World* m_world, EventBroker *eventBroker) = 0;
|
||||||
virtual void Start(World* m_world, EventBroker *eventBroker);
|
virtual void Update() = 0;
|
||||||
virtual void Update();
|
|
||||||
protected:
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@@ -1,20 +1,8 @@
|
|||||||
#ifndef NetworkDefines_h__
|
#ifndef NetworkDefines_h__
|
||||||
#define NetworkDefines_h__
|
#define NetworkDefines_h__
|
||||||
|
|
||||||
#include <boost/asio/ip/udp.hpp>
|
|
||||||
#include <queue>
|
|
||||||
#include "Network/Packet.h"
|
|
||||||
|
|
||||||
|
|
||||||
#define BOARDSIZE 16
|
|
||||||
#define MAXCONNECTIONS 8
|
#define MAXCONNECTIONS 8
|
||||||
#define INPUTSIZE 128
|
#define INPUTSIZE 128
|
||||||
#define PLAYERSPEED 0.2f;
|
#define PLAYERSPEED 0.2f;
|
||||||
|
|
||||||
typedef boost::shared_ptr<boost::asio::ip::udp::socket> socket_ptr;
|
|
||||||
typedef boost::shared_ptr<std::string> string_ptr;
|
|
||||||
typedef boost::shared_ptr<std::queue<string_ptr>> messageQueue_ptr;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
@@ -5,6 +5,7 @@
|
|||||||
#include <ctime>
|
#include <ctime>
|
||||||
|
|
||||||
#include <glm/common.hpp>
|
#include <glm/common.hpp>
|
||||||
|
#include <boost/asio/ip/udp.hpp>
|
||||||
|
|
||||||
#include "Network/MessageType.h"
|
#include "Network/MessageType.h"
|
||||||
#include "Network/NetworkDefinitions.h"
|
#include "Network/NetworkDefinitions.h"
|
||||||
@@ -18,8 +19,8 @@ class Server : public Network
|
|||||||
public:
|
public:
|
||||||
Server();
|
Server();
|
||||||
~Server();
|
~Server();
|
||||||
void Start(World* m_world, EventBroker *eventBroker);
|
void Start(World* m_world, EventBroker *eventBroker) override;
|
||||||
void Update();
|
void Update() override;
|
||||||
void Close();
|
void Close();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ using namespace boost::asio::ip;
|
|||||||
|
|
||||||
Client::Client() : m_Socket(m_IOService)
|
Client::Client() : m_Socket(m_IOService)
|
||||||
{
|
{
|
||||||
m_ReceiverEndpoint = udp::endpoint(boost::asio::ip::address::from_string("192.168.1.2"), 13);
|
m_ReceiverEndpoint = udp::endpoint(boost::asio::ip::address::from_string("192.168.1.6"), 13);
|
||||||
// Set up network stream
|
// Set up network stream
|
||||||
m_NextSnapshot.InputForward = "";
|
m_NextSnapshot.InputForward = "";
|
||||||
m_NextSnapshot.InputRight = "";
|
m_NextSnapshot.InputRight = "";
|
||||||
|
|||||||
@@ -1,13 +0,0 @@
|
|||||||
#include "Network/Network.h"
|
|
||||||
|
|
||||||
Network::Network()
|
|
||||||
{ }
|
|
||||||
|
|
||||||
Network::~Network()
|
|
||||||
{ }
|
|
||||||
|
|
||||||
void Network::Start(World * m_world, EventBroker * eventBroker)
|
|
||||||
{ }
|
|
||||||
|
|
||||||
void Network::Update()
|
|
||||||
{ }
|
|
||||||
@@ -12,14 +12,15 @@ Packet::Packet(MessageType type, unsigned int& packetID)
|
|||||||
packetID++;
|
packetID++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Create message
|
||||||
Packet::Packet(char* data, const int sizeOfPacket)
|
Packet::Packet(char* data, const int sizeOfPacket)
|
||||||
{
|
{
|
||||||
// Create message
|
|
||||||
|
|
||||||
// Resize message
|
// Resize message
|
||||||
m_MaxPacketSize = sizeOfPackage;
|
m_MaxPacketSize = sizeOfPacket;
|
||||||
// Copy data newly allocated memory
|
// Copy data newly allocated memory
|
||||||
|
m_Data = new char[sizeOfPacket];
|
||||||
|
memcpy(m_Data, data, sizeOfPacket);
|
||||||
|
m_Offset = sizeOfPacket;
|
||||||
}
|
}
|
||||||
|
|
||||||
Packet::~Packet()
|
Packet::~Packet()
|
||||||
@@ -39,7 +40,7 @@ void Packet::WriteString(std::string str)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void Packet::WriteData(char * data, int sizeOfData)
|
void Packet::WriteData(char * data, int sizeOfData)
|
||||||
{
|
{
|
||||||
if (m_Offset + sizeOfData > m_MaxPacketSize) {
|
if (m_Offset + sizeOfData > m_MaxPacketSize) {
|
||||||
LOG_WARNING("Packet::WriteData(): Data size in packet exceeded maximum packet size.\n");
|
LOG_WARNING("Packet::WriteData(): Data size in packet exceeded maximum packet size.\n");
|
||||||
}
|
}
|
||||||
@@ -50,10 +51,10 @@ void Packet::WriteData(char * data, int sizeOfData)
|
|||||||
std::string Packet::ReadString()
|
std::string Packet::ReadString()
|
||||||
{
|
{
|
||||||
std::string returnValue(m_Data + m_ReturnDataOffset);
|
std::string returnValue(m_Data + m_ReturnDataOffset);
|
||||||
if (m_Offset < m_ReturnDataOffset + returnValue.size()){
|
if (m_Offset < m_ReturnDataOffset + returnValue.size()) {
|
||||||
LOG_WARNING("packet ReadString(): Oh no! You are trying to remove things outside my memory kingdom");
|
LOG_WARNING("packet ReadString(): Oh no! You are trying to remove things outside my memory kingdom");
|
||||||
return "PopFrontString Failed";
|
return "PopFrontString Failed";
|
||||||
}
|
}
|
||||||
// +1 for null terminator.
|
// +1 for null terminator.
|
||||||
m_ReturnDataOffset += returnValue.size() + 1;
|
m_ReturnDataOffset += returnValue.size() + 1;
|
||||||
return returnValue;
|
return returnValue;
|
||||||
@@ -68,4 +69,4 @@ char * Packet::ReadData(int SizeOfData)
|
|||||||
unsigned int oldReturnDataOffset = m_ReturnDataOffset;
|
unsigned int oldReturnDataOffset = m_ReturnDataOffset;
|
||||||
m_ReturnDataOffset += SizeOfData;
|
m_ReturnDataOffset += SizeOfData;
|
||||||
return (m_Data + oldReturnDataOffset);
|
return (m_Data + oldReturnDataOffset);
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user