X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=src%2Fkernel%2Fkernel.cpp;h=a37c89433931be1787eefdd19dcc09a426b5bfd5;hb=3a3287b8425c355dbb54fffe6b546367ce32c8ac;hp=4db3eeeecd5950c3600cfc1c6fa3f7ae5389af18;hpb=202ad71d2beff55ffdb8e62bc3a62a0abb4c4618;p=vlp.git diff --git a/src/kernel/kernel.cpp b/src/kernel/kernel.cpp index 4db3eee..a37c894 100644 --- a/src/kernel/kernel.cpp +++ b/src/kernel/kernel.cpp @@ -77,6 +77,9 @@ #include "../../config.h" +namespace loglan { +namespace vlp { + char CharLine[25] = "________________________"; /** @@ -205,7 +208,7 @@ void QKernel::loadConfig(const char * fname) std::vector hosts = config.getHosts(); - for (int i = 0; i < hosts.size(); i++) { + for (unsigned int i = 0; i < hosts.size(); i++) { ConnectList.append(new ConnectEntry(hosts[i].c_str())); } @@ -219,11 +222,10 @@ void QKernel::loadConfig(const char * fname) */ void QKernel::on_actionExecute_triggered() { - int i; QString s = QFileDialog::getOpenFileName(this, "Execute", progdir, "*.log"); if (!s.isNull()) { - i = s.indexOf(".log"); + int i = s.indexOf(".log"); if (i > 0) s.remove(i, 4); @@ -304,8 +306,6 @@ void QKernel::on_actionHelp_triggered() */ void QKernel::RunGraphModule(char *sk) { - char cmd[255]; - QString program = getHomeDir(); program += "/modules/loggraph"; @@ -530,18 +530,21 @@ void QKernel::on_actionKill_triggered() KillInterpreterDialog dialog(this); dialog.setWindowTitle("Kill interpreter"); - MESSAGE m; - InterpEntry *interpreter; - if (dialog.exec()) { + MESSAGE m; m.msg_type = MSG_INT; m.param.pword[0] = INT_KILL; + + InterpEntry *interpreter; interpreter = findINTbyID(dialog.getInterpreterId()); + if (interpreter != NULL) { - if (!(interpreter->remote)) + if (!(interpreter->remote)) { write(interpreter->sock, &m, sizeof(MESSAGE)); - else + } + else { WriteMessage("This is a remote instance of a program!"); + } } else { WriteMessage("Interpreter not found"); @@ -558,11 +561,12 @@ void QKernel::NetMessage() /* TODO: It has to be rewritten */ MESSAGE msg; int cnt; - char ss[255]; InterpEntry *pom; cnt = read(net_sock, &msg, sizeof(MESSAGE)); if ((cnt > 0) && (msg.msg_type == MSG_NET)) { + char ss[255]; + switch(msg.param.pword[0]) { case NET_CSWRITELN: WriteMessage(msg.param.pstr); @@ -737,9 +741,9 @@ void QKernel::IntMessage(int sock) void QKernel::WriteMessage(const char *msg) { int x; - int y; +// int y; x = desktop->textCursor().blockNumber(); - y = desktop->textCursor().columnNumber(); +// y = desktop->textCursor().columnNumber(); if (x > 100) { desktop->clear(); @@ -853,9 +857,9 @@ InterpEntry *QKernel::findINTbySocket(int _id) { InterpEntry *pom = NULL; - for (int i = 0; i < Interpreters.size(); i++) { - if (Interpreters.at(i)->sock == _id) { - pom = Interpreters.at(i); + for (auto interpreter : Interpreters) { + if (interpreter->sock == _id) { + pom = interpreter; break; } } @@ -872,9 +876,9 @@ InterpEntry *QKernel::findINTbyID(int _id) { InterpEntry *pom = NULL; - for (int i = 0; i < Interpreters.size(); i++) { - if (Interpreters.at(i)->ID == _id) { - pom = Interpreters.at(i); + for (auto interpreter : Interpreters) { + if (interpreter->ID == _id) { + pom = interpreter; break; } } @@ -1004,7 +1008,6 @@ InterpEntry *QKernel::RunIntModule(char *ss, int r) void QKernel::RemoteInstance(InterpEntry *interp, int on) { MESSAGE m; - char s[255]; m.msg_type = MSG_NET; m.param.pword[0] = NET_NODE_EXIST; @@ -1059,6 +1062,7 @@ void QKernel::RemoteInstance(InterpEntry *interp, int on) m.param.pword[1] = interp->RInstances[on]; write(interp->sock, &m, sizeof(MESSAGE)); } else { /* There is no such a node! */ + char s[255]; sprintf(s, "Warning: Node number %d not found!", on); WriteMessage(s); WriteMessage("Allocating O-process on the local node"); @@ -1109,6 +1113,9 @@ void QKernel::on_actionInfo_triggered() wait_for_info = TRUE; } +} +} + /** * Program main function * All program arguments but the first one (argv[0]: program name) are saved and @@ -1121,8 +1128,8 @@ int main(int argc, char **argv) XInitThreads(); QApplication * app = new QApplication(argc, argv); - QKernel kernel(argc, argv); + loglan::vlp::QKernel kernel(argc, argv); kernel.show(); return app->exec(); -} +} \ No newline at end of file