Moved networking functions into their own engine class

This commit is contained in:
Alexander Bock
2015-04-22 18:22:19 +02:00
parent 411765ab4d
commit 19417d87c8
6 changed files with 154 additions and 13 deletions

View File

@@ -35,6 +35,7 @@
#include <openspace/interaction/keyboardcontroller.h>
#include <openspace/interaction/luaconsole.h>
#include <openspace/interaction/mousecontroller.h>
#include <openspace/network/networkengine.h>
#include <openspace/rendering/renderengine.h>
#include <openspace/scripting/scriptengine.h>
#include <openspace/scenegraph/scenegraph.h>
@@ -94,6 +95,7 @@ OpenSpaceEngine::OpenSpaceEngine(std::string programName)
, _interactionHandler(new interaction::InteractionHandler)
, _renderEngine(new RenderEngine)
, _scriptEngine(new scripting::ScriptEngine)
, _networkEngine(new NetworkEngine)
, _commandlineParser(new ghoul::cmdparser::CommandlineParser(programName, true))
, _console(new LuaConsole)
, _gui(new gui::GUI)
@@ -115,6 +117,7 @@ OpenSpaceEngine::~OpenSpaceEngine() {
delete _interactionHandler;
delete _renderEngine;
delete _scriptEngine;
delete _networkEngine;
delete _commandlineParser;
delete _console;
delete _gui;
@@ -700,6 +703,7 @@ void OpenSpaceEngine::encode() {
_syncBuffer->write();
}
_networkEngine->sendStatusMessage();
}
void OpenSpaceEngine::decode() {
@@ -709,7 +713,6 @@ void OpenSpaceEngine::decode() {
Time::ref().deserialize(_syncBuffer);
_scriptEngine->deserialize(_syncBuffer);
_renderEngine->deserialize(_syncBuffer);
}
}
@@ -719,17 +722,7 @@ void OpenSpaceEngine::externalControlCallback(const char* receivedChars,
if (size == 0)
return;
// The first byte determines the type of message
const char type = receivedChars[0];
switch (type) {
case '0': // LuaScript
{
std::string script = std::string(receivedChars + 1);
LINFO("Received Lua Script: '" << script << "'");
//_scriptEngine->runScript(script);
_scriptEngine->queueScript(script);
}
}
_networkEngine->handleMessage(std::string(receivedChars));
}
void OpenSpaceEngine::enableBarrier() {