#include <config.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <unistd.h>
-#include <fcntl.h>
-#include <cerrno>
-
#include "lyxserver.h"
-#include "lyx_main.h"
#include "debug.h"
+#include "funcrequest.h"
+#include "LyXAction.h"
#include "lyxfunc.h"
#include "support/lstrings.h"
#include "support/lyxlib.h"
#include "frontends/lyx_gui.h"
+#include <boost/bind.hpp>
+
+#include <cerrno>
+#include <sys/stat.h>
+#include <fcntl.h>
+
#ifdef __EMX__
#include <cstdlib>
#include <io.h>
#include "support/os2_errortable.h"
#endif
-
-using namespace lyx::support;
+using lyx::support::compare;
+using lyx::support::rtrim;
+using lyx::support::split;
+using lyx::support::unlink;
using std::endl;
+using std::string;
+
// provide an empty mkfifo() if we do not have one. This disables the
// lyxserver.
ready = false;
}
+
int LyXComm::startPipe(string const & filename, bool write)
{
int fd;
}
if (!write) {
- lyx_gui::set_read_callback(fd, this);
+ lyx_gui::register_socket_callback(fd, boost::bind(&LyXComm::read_ready, this));
}
return fd;
return;
if (!write) {
- lyx_gui::remove_read_callback(fd);
+ lyx_gui::unregister_socket_callback(fd);
}
#ifdef __EMX__
}
+string const LyXComm::inPipeName() const
+{
+ return pipename + string(".in");
+}
+
+
+string const LyXComm::outPipeName() const
+{
+ return pipename + string(".out");
+}
+
+
// LyXServer class
LyXServer::~LyXServer()
// support currently. (Lgb)
- serv->func->dispatch(cmd + ' ' + arg);
+ serv->func->dispatch(FuncRequest(lyxaction.lookupFunc(cmd), arg));
string const rval = serv->func->getMessage();
//modified june 1999 stefano@zool.su.se: