start ChessServer and remove basic redundant examples
This commit is contained in:
@@ -0,0 +1,46 @@
|
|||||||
|
#include "ChessServer.h"
|
||||||
|
|
||||||
|
void ChessServer::onLoad() {
|
||||||
|
ServerModule* sm = (ServerModule*) moduleInstances[ServerModule()];
|
||||||
|
|
||||||
|
sm->startServer(9932);
|
||||||
|
}
|
||||||
|
|
||||||
|
//void ChessServer::run() {}
|
||||||
|
|
||||||
|
bool ChessServer::onEvent(const Archimedes::Event& event) {
|
||||||
|
|
||||||
|
unsigned int type = app->getEventType(event);
|
||||||
|
|
||||||
|
|
||||||
|
/*if(type == app->getEventType("DataSentEvent")) {
|
||||||
|
//we did this?
|
||||||
|
return true;
|
||||||
|
} else */
|
||||||
|
|
||||||
|
if(type == app->getEventType(Archimedes::DataRecievedEvent())) {
|
||||||
|
|
||||||
|
static ServerModule* sm; { sm = (ServerModule*) moduleInstances[ServerModule()]; }
|
||||||
|
|
||||||
|
Archimedes::DataRecievedEvent& e = (Archimedes::DataRecievedEvent&) event;
|
||||||
|
|
||||||
|
static std::string s; s = std::string((const char*)e.msg->m_pData, e.msg->m_cbSize);
|
||||||
|
|
||||||
|
|
||||||
|
for(auto& it : sm->getClients()) {
|
||||||
|
if(it.first != e.msg->m_conn)
|
||||||
|
sm->sendReliable(it.first, s.c_str(), s.length());
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
|
||||||
|
} /*else if(type == app->getEventType("ConnectionStatusChangedEvent")) {
|
||||||
|
|
||||||
|
//Archimedes::ConnectionStatusChangedEvent& e = (Archimedes::ConnectionStatusChangedEvent&) event;
|
||||||
|
|
||||||
|
return false;
|
||||||
|
|
||||||
|
}*/
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1,34 @@
|
|||||||
|
#include "Archimedes.h"
|
||||||
|
|
||||||
|
#include "modules/ServerModule/ServerModule.h"
|
||||||
|
|
||||||
|
class ChessServer : public Archimedes::Module {
|
||||||
|
|
||||||
|
public:
|
||||||
|
|
||||||
|
ChessServer(Archimedes::App* a, void* h) : Module(a, h) {
|
||||||
|
|
||||||
|
name = "ChessServer";
|
||||||
|
|
||||||
|
ServerModule* sm = new ServerModule(a, h);
|
||||||
|
deps[*sm] = sm;
|
||||||
|
sm->shouldHandleEvents(ServerModule::SMEventEnum::ConnectionStatusChanged | ServerModule::SMEventEnum::DataSent);
|
||||||
|
}
|
||||||
|
|
||||||
|
ChessServer() { name = "ChessServer"; }
|
||||||
|
|
||||||
|
~ChessServer() {
|
||||||
|
if(app) {}
|
||||||
|
}
|
||||||
|
|
||||||
|
void onLoad();
|
||||||
|
|
||||||
|
//void run();
|
||||||
|
|
||||||
|
bool onEvent(const Archimedes::Event&);
|
||||||
|
};
|
||||||
|
|
||||||
|
#ifdef CHESSSERVER_DYNAMIC
|
||||||
|
typedef ChessServer mtype;
|
||||||
|
#include "endModule.h"
|
||||||
|
#endif
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
#include "DependsOnPrint.h"
|
|
||||||
|
|
||||||
DependsOnPrint::DependsOnPrint(Archimedes::App* a, void* h) : Module(a, h) {
|
|
||||||
name = "DependsOnPrint";
|
|
||||||
|
|
||||||
deps["Print"] = "/home/nathan/Projects/Archimedes/result-1/bin/Print";
|
|
||||||
}
|
|
||||||
|
|
||||||
DependsOnPrint::~DependsOnPrint() {
|
|
||||||
std::cout << "DependsOnPrint Destroyed!\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
void DependsOnPrint::run() {
|
|
||||||
std::cout << "DependsOnPrint lib loaded and run!\n";
|
|
||||||
app->emitEvent(new Archimedes::DoUnloadModuleEvent(name));
|
|
||||||
}
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
#include "Archimedes.h"
|
|
||||||
|
|
||||||
class DependsOnPrint : public Archimedes::Module {
|
|
||||||
|
|
||||||
public:
|
|
||||||
DependsOnPrint(Archimedes::App*, void*);
|
|
||||||
~DependsOnPrint();
|
|
||||||
void run();
|
|
||||||
void onLoad() {}
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
#ifdef DEPENDSONPRINT_DYNAMIC
|
|
||||||
typedef DependsOnPrint mtype;
|
|
||||||
#include "endModule.h"
|
|
||||||
#endif
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
#include "DependsOnPrintStatic.h"
|
|
||||||
|
|
||||||
#include "modules/Archimedes-Modules/Print/Print.h"
|
|
||||||
|
|
||||||
DependsOnPrintStatic::DependsOnPrintStatic(Archimedes::App* a, void* h) : Module(a, h) {
|
|
||||||
name = "DependsOnPrintStatic";
|
|
||||||
|
|
||||||
Print* p = new Print(a, h);
|
|
||||||
deps[*p] = p;
|
|
||||||
}
|
|
||||||
|
|
||||||
DependsOnPrintStatic::~DependsOnPrintStatic() {
|
|
||||||
std::cout << "DependsOnPrintStatic Destroyed!\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
void DependsOnPrintStatic::run() {
|
|
||||||
std::cout << "DependsOnPrintStatic lib loaded and run!\n";
|
|
||||||
app->emitEvent(new Archimedes::DoUnloadModuleEvent(name));
|
|
||||||
}
|
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
#include "Archimedes.h"
|
|
||||||
|
|
||||||
class DependsOnPrintStatic : public Archimedes::Module {
|
|
||||||
|
|
||||||
public:
|
|
||||||
DependsOnPrintStatic(Archimedes::App*, void*);
|
|
||||||
~DependsOnPrintStatic();
|
|
||||||
void run();
|
|
||||||
void onLoad() {}
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
#ifdef DEPENDSONPRINTSTATIC_DYNAMIC
|
|
||||||
typedef DependsOnPrintStatic mtype;
|
|
||||||
#include "endModule.h"
|
|
||||||
#endif
|
|
||||||
@@ -1,37 +0,0 @@
|
|||||||
#include "TestMenu.h"
|
|
||||||
|
|
||||||
TestMenu::TestMenu(Archimedes::App* a, void* h) : Module(a, h) {
|
|
||||||
name = "TestMenu";
|
|
||||||
}
|
|
||||||
|
|
||||||
TestMenu::~TestMenu() {
|
|
||||||
std::cout << "TestMenu Destroyed!\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
void TestMenu::run() {
|
|
||||||
|
|
||||||
std::cout << "Your number is: " << num << "\n"
|
|
||||||
<< "1. Add 1\n"
|
|
||||||
<< "2. Subtract 1\n"
|
|
||||||
<< "3. Unload Module\n\n"
|
|
||||||
<< "4. Quit\n\n";
|
|
||||||
|
|
||||||
std::cin >> choice;
|
|
||||||
|
|
||||||
switch(choice) {
|
|
||||||
case 1:
|
|
||||||
num++;
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
num--;
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
app->emitEvent(new Archimedes::DoUnloadModuleEvent(name));
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
app->end();
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
#include "Archimedes.h"
|
|
||||||
|
|
||||||
class TestMenu : public Archimedes::Module {
|
|
||||||
|
|
||||||
public:
|
|
||||||
TestMenu(Archimedes::App*, void*);
|
|
||||||
TestMenu() { name = "TestMenu"; }
|
|
||||||
~TestMenu();
|
|
||||||
void run();
|
|
||||||
void onLoad() {}
|
|
||||||
|
|
||||||
private:
|
|
||||||
int choice;
|
|
||||||
int num = 5;
|
|
||||||
};
|
|
||||||
|
|
||||||
#ifdef TESTMENU_DYNAMIC
|
|
||||||
typedef TestMenu mtype;
|
|
||||||
#include "endModule.h"
|
|
||||||
#endif
|
|
||||||
Reference in New Issue
Block a user