diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt index 5875ce877..4559c8c73 100644 --- a/plugins/CMakeLists.txt +++ b/plugins/CMakeLists.txt @@ -10,11 +10,6 @@ if(BUILD_DFUSION) add_subdirectory (Dfusion) endif() -OPTION(BUILD_QTPLUG "Build the experimental Qt plugin." OFF) -if(BUILD_QTPLUG) - add_subdirectory (qtplug) -endif() - OPTION(BUILD_STONESENSE "Build stonesense (needs a checkout first)." OFF) if(BUILD_STONESENSE) add_subdirectory (stonesense) @@ -25,11 +20,6 @@ if(BUILD_DEV_PLUGINS) add_subdirectory (devel) endif() -OPTION(BUILD_SERVER "Build server." OFF) -if(BUILD_SERVER) - add_subdirectory (server) -endif() - OPTION(BUILD_DF2MC "Build DF2MC (needs a checkout first)." OFF) if(BUILD_DF2MC) add_subdirectory (df2mc) diff --git a/plugins/qtplug/CMakeLists.txt b/plugins/qtplug/CMakeLists.txt deleted file mode 100644 index aaeb165e6..000000000 --- a/plugins/qtplug/CMakeLists.txt +++ /dev/null @@ -1,42 +0,0 @@ -find_package(Qt4 QUIET) -find_package(OpenGL QUIET) - -if(QT4_FOUND AND OPENGL_FOUND AND OPENGL_GLU_FOUND) - IF(QT_VERSION_MAJOR MATCHES 4 AND QT_VERSION_MINOR GREATER 6) - set( QT_USE_QTGUI TRUE ) - set( QT_USE_QTOPENGL TRUE ) - INCLUDE( ${QT_USE_FILE} ) - - include_directories(${QT_INCLUDES} ${CMAKE_CURRENT_BINARY_DIR} "${dfhack_SOURCE_DIR}/library/depends/tthread") - - set ( qtplug_SRCS - qtplug.cpp - blankslade.cpp - glwidget.cpp - ${dfhack_SOURCE_DIR}/library/depends/tthread/tinythread.cpp - ) - - SET ( qtplug_UI - gui/main.ui - ) - - SET( qtplug_RCS - gui/resources.qrc - ) - - # this command will generate rules that will run rcc on all files from blankslade_RCS - # in result blankslade_RC_SRCS variable will contain paths to files produced by rcc - QT4_ADD_RESOURCES( qtplug_RC_SRCS ${qtplug_RCS} ) - - QT4_WRAP_UI(qtplug_UI_h ${qtplug_UI}) - qt4_automoc(${qtplug_SRCS}) - DFHACK_PLUGIN(qtplug ${qtplug_SRCS} ${qtplug_RC_SRCS} ${qtplug_UI_h}) - # a small texture file - install(FILES terrain.png DESTINATION ${DFHACK_LIBRARY_DESTINATION}) - target_link_libraries(qtplug ${OPENGL_LIBRARIES} ${QT_LIBRARIES} ) - ELSE(QT_VERSION_MAJOR MATCHES 4 AND QT_VERSION_MINOR GREATER 6) - MESSAGE(STATUS "Can't build the Qt plugin. Your Qt is too old.") - ENDIF(QT_VERSION_MAJOR MATCHES 4 AND QT_VERSION_MINOR GREATER 6) -else(QT4_FOUND AND OPENGL_FOUND AND OPENGL_GLU_FOUND) - MESSAGE(STATUS "Required libraries (Qt, GL, GLU) not found - Qt plugin can't be built.") -endif(QT4_FOUND AND OPENGL_FOUND AND OPENGL_GLU_FOUND) \ No newline at end of file diff --git a/plugins/qtplug/blankslade.cpp b/plugins/qtplug/blankslade.cpp deleted file mode 100644 index 73c49b5b4..000000000 --- a/plugins/qtplug/blankslade.cpp +++ /dev/null @@ -1,98 +0,0 @@ -/* - * Copyright (c) 2010 Petr Mrázek (peterix) - * See LICENSE for details. - */ - -#include "blankslade.h" -#include -#include -#include "glwidget.h" - -blankslade::blankslade(QWidget *parent): QMainWindow(parent) -{ - ui.setupUi(this); - GLWidget * glw = new GLWidget(); - ui.gridding->addWidget(glw); - connect(ui.actionOpen,SIGNAL(triggered(bool)),this,SLOT(slotOpen(bool))); - connect(ui.actionQuit,SIGNAL(triggered(bool)),this,SLOT(slotQuit(bool))); - connect(ui.actionSave,SIGNAL(triggered(bool)),this,SLOT(slotSave(bool))); - connect(ui.actionSave_As,SIGNAL(triggered(bool)),this,SLOT(slotSaveAs(bool))); - ui.actionOpen->setIcon(QIcon::fromTheme("document-open")); - ui.actionOpen->setIconText(tr("Open")); - ui.actionSave->setIcon(QIcon::fromTheme("document-save")); - ui.actionSave->setIconText(tr("Save")); - ui.actionSave_As->setIcon(QIcon::fromTheme("document-save-as")); - ui.actionSave_As->setIconText(tr("Save As")); - ui.actionQuit->setIcon(QIcon::fromTheme("application-exit")); - ui.actionQuit->setIconText(tr("Run DF")); -} - -blankslade::~blankslade() -{} - -void blankslade::slotOpen(bool ) -{ - /* - QFileDialog fd(this,tr("Locate the Memoxy.xml file")); - fd.setNameFilter(tr("Memory definition (*.xml)")); - fd.setFileMode(QFileDialog::ExistingFile); - fd.setAcceptMode(QFileDialog::AcceptOpen); - int result = fd.exec(); - if(result == QDialog::Accepted) - { - QStringList files = fd.selectedFiles(); - QString fileName = files[0]; - QDomDocument doc("memxml"); - QFile file(fileName); - if(!file.open(QIODevice::ReadOnly)) - { - return; - } - if(!doc.setContent(&file)) - { - file.close(); - return; - } - mod = new MemXMLModel(doc,this); - ui.entryView->setModel(mod); - file.close(); - } - */ -} - -void blankslade::slotQuit(bool ) -{ - close(); -} - -void blankslade::slotSave(bool ) -{ - // blah -} - -void blankslade::slotRunDF(bool ) -{ - // blah -} - -void blankslade::slotSaveAs(bool ) -{ - QFileDialog fd(this,tr("Choose file to save as...")); - fd.setNameFilter(tr("Memory definition (*.xml)")); - fd.setFileMode(QFileDialog::AnyFile); - fd.selectFile("Memory.xml"); - fd.setAcceptMode(QFileDialog::AcceptSave); - int result = fd.exec(); - if(result == QDialog::Accepted) - { - QStringList files = fd.selectedFiles(); - QString file = files[0]; - qDebug() << "File:" << file; - } -} - -void blankslade::slotSetupDFs(bool ) -{ -} - -#include "blankslade.moc" diff --git a/plugins/qtplug/blankslade.h b/plugins/qtplug/blankslade.h deleted file mode 100644 index bae0eeb17..000000000 --- a/plugins/qtplug/blankslade.h +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright (c) 2010 Petr Mrázek (peterix) - * See LICENSE for details. - */ - -#ifndef blankslade_H -#define blankslade_H - -#include -#include "ui_main.h" - -class blankslade : public QMainWindow -{ - Q_OBJECT -public: - blankslade(QWidget *parent = 0); - virtual ~blankslade(); - -private: - Ui::MainWindow ui; -public slots: - void slotOpen(bool); - void slotQuit(bool); - void slotSave(bool); - void slotSaveAs(bool); - void slotRunDF(bool); - void slotSetupDFs(bool); -}; -#endif // blankslade_H diff --git a/plugins/qtplug/glwidget.cpp b/plugins/qtplug/glwidget.cpp deleted file mode 100644 index 1b614633c..000000000 --- a/plugins/qtplug/glwidget.cpp +++ /dev/null @@ -1,246 +0,0 @@ -/* - * Copyright (c) 2010 Petr Mrázek (peterix) - * See LICENSE for details. - */ - -#include "glwidget.h" -#include -#include -#include -#include -#include -#include - -struct Vertex -{ - float texcoord[2]; - float color[3]; - float position[3]; -}; - -#define FRS 0.0625 -#define FRX FRS/2 - -// this is crap -const Vertex house_vert[] = -{ - // walls - { { 0.0, 0.0 }, { 0.0, 0.0, 1.0 }, { -4.0, -4.0, -4.0 } }, - { { 0.0, FRS }, { 0.0, 1.0, 0.0 }, { -4.0, -4.0, 4.0 } }, - { { FRS, FRS }, { 0.0, 1.0, 1.0 }, { 4.0, -4.0, 4.0 } }, - { { FRS, 0.0 }, { 1.0, 0.0, 0.0 }, { 4.0, -4.0, -4.0 } }, - - { { 0.0, 0.0 }, { 1.0, 0.0, 1.0 }, { -4.0, 4.0, -4.0 } }, - { { 0.0, FRS }, { 1.0, 1.0, 0.0 }, { -4.0, 4.0, 4.0 } }, - { { FRS, FRS }, { 1.0, 1.0, 1.0 }, { 4.0, 4.0, 4.0 } }, - { { FRS, 0.0 }, { 0.0, 0.0, 1.0 }, { 4.0, 4.0, -4.0 } }, - - { { 0.0, 0.0 }, { 0.0, 1.0, 0.0 }, { -4.0, -4.0, -4.0 } }, - { { 0.0, FRS }, { 0.0, 1.0, 1.0 }, { -4.0, -4.0, 4.0 } }, - { { FRS, FRS }, { 1.0, 0.0, 0.0 }, { -4.0, 4.0, 4.0 } }, - { { FRS, 0.0 }, { 1.0, 0.0, 1.0 }, { -4.0, 4.0, -4.0 } }, - - { { 0.0, 0.0 }, { 0.0, 1.0, 0.0 }, { 4.0, -4.0, -4.0 } }, - { { 0.0, FRS }, { 0.0, 1.0, 1.0 }, { 4.0, -4.0, 4.0 } }, - { { FRS, FRS }, { 1.0, 0.0, 0.0 }, { 4.0, 4.0, 4.0 } }, - { { FRS, 0.0 }, { 1.0, 0.0, 1.0 }, { 4.0, 4.0, -4.0 } }, - // roof - { { 0.0, 0.0 }, { 0.0, 0.0, 1.0 }, { -4.0, 4.0, -4.0 } }, - { { FRS, 0.0 }, { 0.0, 1.0, 1.0 }, { 4.0, 4.0, -4.0 } }, - { { FRX, FRX }, { 1.0, 1.0, 1.0 }, { 0.0, 9.0, 0.0 } }, - - { { FRS, 0.0 }, { 1.0, 0.0, 0.0 }, { 4.0, 4.0, -4.0 } }, - { { FRS, FRS }, { 1.0, 1.0, 0.0 }, { 4.0, 4.0, 4.0 } }, - { { FRX, FRX }, { 1.0, 1.0, 1.0 }, { 0.0, 9.0, 0.0 } }, - - { { FRS, FRS }, { 0.0, 1.0, 0.0 }, { 4.0, 4.0, 4.0 } }, - { { 0.0, FRS }, { 0.0, 1.0, 1.0 }, { -4.0, 4.0, 4.0 } }, - { { FRX, FRX }, { 1.0, 1.0, 1.0 }, { 0.0, 9.0, 0.0 } }, - - { { 0.0, FRS }, { 0.0, 1.0, 0.0 }, { -4.0, 4.0, 4.0 } }, - { { 0.0, 0.0 }, { 1.0, 1.0, 0.0 }, { -4.0, 4.0, -4.0 } }, - { { FRX, FRX }, { 1.0, 1.0, 1.0 }, { 0.0, 9.0, 0.0 } } -}; - -const unsigned char house_idx[] = -{ - // walls - 0, 1, 2, 0, 2, 3, - 4, 5, 6, 4, 6, 7, - 8, 9, 10, 8, 10, 11, - 12, 13, 14, 12, 14, 15, - // roof - 16, 17, 18, - 19, 20, 21, - 22, 23, 24, - 25, 26, 27 -}; - -class GLWPrivate -{ -public: - QGLBuffer *VBO; - QGLBuffer *EBO; - QGLShaderProgram prog; - int positionAttrib; - int colorAttrib; - int texcoordsAttrib; - int mvpUniform; - int textureUniform; - int terrain; - float pz,rx,ry; - QPoint lastMouse; -}; - -GLWidget::GLWidget() -{ - d = new GLWPrivate; - d->pz = -140.0f; - d->rx = d->ry = 0.0f; - d->VBO = d->EBO = 0; - startTimer( 10 ); -} - -GLWidget::~GLWidget() -{ - if(d->VBO) delete d->VBO; - if(d->EBO) delete d->EBO; - delete d; -} - -const char * VS_src = -"#version 130\n" -"in vec3 position; in vec3 color; uniform mat4 mvp; out vec3 c;" -"in vec2 tc_in; out vec2 coord;" -"void main()" -"{" - "gl_Position = mvp*vec4(position,1);" - "c = color;" - "coord = tc_in;" -"}"; - -const char * FS_src = -"#version 130\n" -"in vec3 c;" -//"out vec4 gl_FragColor;" -"in vec2 coord; uniform sampler2D tex;" -"void main()" -"{" -// "gl_FragColor = vec4(c,1);" -// "gl_FragColor = mix( texture(tex, coord), vec4(c,1), 0.5);" -// "gl_FragColor = vec4(c,1) - texture(tex, coord);" - "gl_FragColor = vec4(c,1) * texture(tex, coord);" -"}"; - -//initialization of OpenGL -void GLWidget::initializeGL() -{ - bool test = 1; - test &= d->prog.addShaderFromSourceCode(QGLShader::Vertex,VS_src); - test &= d->prog.addShaderFromSourceCode(QGLShader::Fragment,FS_src); - test &= d->prog.link(); - if(!test) - std::cout << "OUCH!" << std::endl; - - d->positionAttrib = d->prog.attributeLocation("position"); - d->colorAttrib = d->prog.attributeLocation("color"); - d->texcoordsAttrib = d->prog.attributeLocation("tc_in"); - - d->mvpUniform = d->prog.uniformLocation("mvp"); - d->textureUniform = d->prog.uniformLocation("tex"); - - if(d->positionAttrib == -1 || d->colorAttrib == -1 || d->mvpUniform == -1) - std::cout << "Bad attribs!" << std::endl; - - QGLBuffer &VBO = *(d->VBO = new QGLBuffer(QGLBuffer::VertexBuffer)); - VBO.create(); - VBO.bind(); - VBO.allocate(sizeof(house_vert)); - VBO.write(0,house_vert,sizeof(house_vert)); - - QGLBuffer &EBO = *(d->EBO = new QGLBuffer(QGLBuffer::IndexBuffer)); - EBO.create(); - EBO.bind(); - EBO.allocate(sizeof(house_idx)); - EBO.write(0,house_idx,sizeof(house_idx)); - - QImage texture; - texture.load("terrain.png"); - d->terrain = bindTexture(texture); - - glClearColor(0.0f, 0.0f, 0.0f, 0.f); - - glShadeModel( GL_SMOOTH ); - glHint( GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST ); - glEnable( GL_TEXTURE_2D ); - glEnable( GL_DEPTH_TEST ); -} - -void GLWidget::paintGL() -{ - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - d->prog.bind(); - - QMatrix4x4 projection; - QMatrix4x4 mvp; - - //projection.ortho(-10,10,-10,10,1,1000); - float aspect = (float)width()/(float)height(); - projection.perspective(10,aspect,1,1000); - mvp = projection; - - mvp.translate(0,0,d->pz); - mvp.rotate(d->ry,1,0,0); - mvp.rotate(d->rx,0,1,0); - d->prog.setUniformValue(d->mvpUniform,mvp); - - //glActiveTexture(GL_TEXTURE0); - glBindTexture(GL_TEXTURE_2D, d->terrain); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); - d->prog.setUniformValue(d->textureUniform,0); - - d->prog.enableAttributeArray(d->positionAttrib); - d->prog.enableAttributeArray(d->colorAttrib); - d->prog.enableAttributeArray(d->texcoordsAttrib); - - d->VBO->bind(); - - d->prog.setAttributeBuffer(d->texcoordsAttrib, GL_FLOAT, offsetof(Vertex, texcoord), 2, sizeof(Vertex)); - d->prog.setAttributeBuffer(d->positionAttrib, GL_FLOAT, offsetof(Vertex, position), 3, sizeof(Vertex)); - d->prog.setAttributeBuffer(d->colorAttrib, GL_FLOAT, offsetof(Vertex, color), 3, sizeof(Vertex)); - - d->EBO->bind(); - - glDrawElements(GL_TRIANGLES, d->EBO->size(), GL_UNSIGNED_BYTE, NULL); - - d->prog.release(); -} - -void GLWidget::resizeGL(int width, int height) -{ - glViewport(0, 0, width, height); -} - -void GLWidget::mousePressEvent(QMouseEvent *event) -{ - d->lastMouse = event->pos(); -} - -void GLWidget::mouseMoveEvent(QMouseEvent *event) -{ - int dx = event->x() - d->lastMouse.x(); - int dy = event->y() - d->lastMouse.y(); - - if (event->buttons() & Qt::LeftButton) - { - d->rx = d->rx + dx; - d->ry = d->ry + dy; - } - d->lastMouse = event->pos(); -} - -void GLWidget::timerEvent(QTimerEvent *event) -{ - updateGL(); -} diff --git a/plugins/qtplug/glwidget.h b/plugins/qtplug/glwidget.h deleted file mode 100644 index 935a6569c..000000000 --- a/plugins/qtplug/glwidget.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2010 Petr Mrázek (peterix) - * See LICENSE for details. - */ - -#ifndef GLWIDGET_H -#define GLWIDGET_H - -#include - -class GLWPrivate; -class GLWidget : public QGLWidget -{ -public: - GLWidget(); - ~GLWidget(); - - float rot; - void resizeGL(int width, int height); - -protected: - void initializeGL(); - void paintGL(); - void mousePressEvent(QMouseEvent *event); - void mouseMoveEvent(QMouseEvent *event); - void timerEvent(QTimerEvent *event); - -private: - GLWPrivate * d; -}; - -#endif // GLWIDGET_H diff --git a/plugins/qtplug/gui/33.png b/plugins/qtplug/gui/33.png deleted file mode 100644 index cb35481f8..000000000 Binary files a/plugins/qtplug/gui/33.png and /dev/null differ diff --git a/plugins/qtplug/gui/diamant.png b/plugins/qtplug/gui/diamant.png deleted file mode 100644 index 794e04de4..000000000 Binary files a/plugins/qtplug/gui/diamant.png and /dev/null differ diff --git a/plugins/qtplug/gui/icon.svgz b/plugins/qtplug/gui/icon.svgz deleted file mode 100644 index 52fbdc1b5..000000000 Binary files a/plugins/qtplug/gui/icon.svgz and /dev/null differ diff --git a/plugins/qtplug/gui/koule.png b/plugins/qtplug/gui/koule.png deleted file mode 100644 index 6eb067164..000000000 Binary files a/plugins/qtplug/gui/koule.png and /dev/null differ diff --git a/plugins/qtplug/gui/krychle.png b/plugins/qtplug/gui/krychle.png deleted file mode 100644 index 856e5415c..000000000 Binary files a/plugins/qtplug/gui/krychle.png and /dev/null differ diff --git a/plugins/qtplug/gui/main.ui b/plugins/qtplug/gui/main.ui deleted file mode 100644 index 755f08f0d..000000000 --- a/plugins/qtplug/gui/main.ui +++ /dev/null @@ -1,361 +0,0 @@ - - - MainWindow - - - - 0 - 0 - 662 - 836 - - - - - 0 - 0 - - - - MainWindow - - - - :/main_icon/main_64.png:/main_icon/main_64.png - - - - - 0 - - - 0 - - - - - - - QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable - - - Qt::RightDockWidgetArea - - - Scéna - - - 2 - - - - - - - - - - - Exponent n - - - - - - - Qt::Horizontal - - - - - - - - - - Exponent e - - - - - - - Qt::Horizontal - - - - - - - - - - - - - - - - - Světlo - - - Qt::AlignCenter - - - - - - - Objekt - - - Qt::AlignCenter - - - - - - - - - - - - Textura - - - Qt::AlignCenter - - - - - - - - - - 1 - 1 - - - - - 96 - 96 - - - - - 0 - 0 - - - - - - - - :/blah/tileable.jpg:/blah/tileable.jpg - - - - 80 - 80 - - - - false - - - false - - - - - - - - - - - Render - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - pushButton_2 - verticalLayoutWidget - pushButton - gridLayoutWidget - - - - - - 0 - 0 - - - - QDockWidget::DockWidgetFloatable|QDockWidget::DockWidgetMovable - - - Qt::BottomDockWidgetArea|Qt::LeftDockWidgetArea|Qt::TopDockWidgetArea - - - Ukázky - - - 1 - - - - - - - - 0 - 0 - - - - QFrame::StyledPanel - - - QFrame::Sunken - - - 1 - - - QAbstractItemView::SelectItems - - - - 32 - 32 - - - - QListView::Static - - - QListView::TopToBottom - - - true - - - QListView::Adjust - - - QListView::SinglePass - - - 10 - - - QListView::ListMode - - - true - - - false - - - false - - - false - - - - Koule - - - - :/blah/koule.png:/blah/koule.png - - - - - Krychle - - - - :/blah/krychle.png:/blah/krychle.png - - - - - Válec - - - - :/blah/valec.png:/blah/valec.png - - - - - Diamant - - - - :/blah/diamant.png:/blah/diamant.png - - - - - a=3,b=3 - - - - :/blah/33.png:/blah/33.png - - - - - - - - - - Open - - - - - Save - - - - - Save As - - - - - Quit - - - - - - - - diff --git a/plugins/qtplug/gui/main_16.png b/plugins/qtplug/gui/main_16.png deleted file mode 100644 index 9f04527a3..000000000 Binary files a/plugins/qtplug/gui/main_16.png and /dev/null differ diff --git a/plugins/qtplug/gui/main_32.png b/plugins/qtplug/gui/main_32.png deleted file mode 100644 index bf279550f..000000000 Binary files a/plugins/qtplug/gui/main_32.png and /dev/null differ diff --git a/plugins/qtplug/gui/main_64.png b/plugins/qtplug/gui/main_64.png deleted file mode 100644 index 79445450a..000000000 Binary files a/plugins/qtplug/gui/main_64.png and /dev/null differ diff --git a/plugins/qtplug/gui/resources.qrc b/plugins/qtplug/gui/resources.qrc deleted file mode 100644 index a32753619..000000000 --- a/plugins/qtplug/gui/resources.qrc +++ /dev/null @@ -1,15 +0,0 @@ - - - main_64.png - main_16.png - main_32.png - - - tileable.jpg - 33.png - diamant.png - koule.png - krychle.png - valec.png - - diff --git a/plugins/qtplug/gui/tileable.jpg b/plugins/qtplug/gui/tileable.jpg deleted file mode 100644 index fdea09b9a..000000000 Binary files a/plugins/qtplug/gui/tileable.jpg and /dev/null differ diff --git a/plugins/qtplug/gui/valec.png b/plugins/qtplug/gui/valec.png deleted file mode 100644 index 17d304403..000000000 Binary files a/plugins/qtplug/gui/valec.png and /dev/null differ diff --git a/plugins/qtplug/qtplug.cpp b/plugins/qtplug/qtplug.cpp deleted file mode 100644 index 56bd1ecda..000000000 --- a/plugins/qtplug/qtplug.cpp +++ /dev/null @@ -1,69 +0,0 @@ -#include "Core.h" -#include -#include -#include -#include -#include -//#include -#include -#include -#include -#include - -#include -#include "blankslade.h" -#include "tinythread.h" - -using std::vector; -using std::string; -using std::stack; -using namespace DFHack; -static void runnable(void *); -static tthread::mutex * instance_mutex = 0; -static bool running = false; -static tthread::thread * QTThread; - -command_result runqt (Core * c, vector & parameters); - -DFHACK_PLUGIN("qtplug"); - -DFhackCExport command_result plugin_init ( Core * c, std::vector &commands) -{ - instance_mutex = new tthread::mutex(); - commands.clear(); - commands.push_back(PluginCommand("runqt","Open an interactive Qt gui.",runqt)); - return CR_OK; -} - -DFhackCExport command_result plugin_shutdown ( Core * c ) -{ - return CR_FAILURE; -} - -command_result runqt (Core * c, vector & parameters) -{ - instance_mutex->lock(); - if(!running) - { - running = true; - QTThread = new tthread::thread(runnable, 0); - } - else - { - c->con.printerr("The Qt test plugin is already running!\n"); - } - instance_mutex->unlock(); - return CR_OK; -} - -static void runnable(void *) -{ - int zero = 0; - QApplication app(zero, 0); - blankslade appGui; - appGui.show(); - app.exec(); - instance_mutex->lock(); - running = false; - instance_mutex->unlock(); -} diff --git a/plugins/qtplug/terrain.png b/plugins/qtplug/terrain.png deleted file mode 100644 index a7b791183..000000000 Binary files a/plugins/qtplug/terrain.png and /dev/null differ diff --git a/plugins/server/CMakeLists.txt b/plugins/server/CMakeLists.txt deleted file mode 100644 index 6fd7c44d0..000000000 --- a/plugins/server/CMakeLists.txt +++ /dev/null @@ -1,42 +0,0 @@ -PROJECT (server) -SET(PROJECT_SRCS - main.cpp -) - -include_directories( ${CMAKE_SOURCE_DIR} ) -IF(UNIX) - OPTION(SERVER_INTERNAL_SO "Link with prebuilt internal zeromq lib and headers." ON) - IF(SERVER_INTERNAL_SO) - SET(PROJECT_LIBS - ${server_SOURCE_DIR}/zeromq/libzmq.so.1 - ${PROJECT_LIBS} - ) - include_directories ( - ${include_directories} - ${server_SOURCE_DIR}/zeromq - ) - install(PROGRAMS ${server_SOURCE_DIR}/zeromq/libzmq.so.1 DESTINATION ${DFHACK_LIBRARY_DESTINATION}) - ELSE() - SET(PROJECT_LIBS - zmq - ${PROJECT_LIBS} - ) - ENDIF() -ELSE() - SET(PROJECT_LIBS - ${server_SOURCE_DIR}/zeromq/libzmq.lib - ${PROJECT_LIBS} - ) - include_directories ( - ${include_directories} - ${server_SOURCE_DIR}/zeromq - ) - install(PROGRAMS ${server_SOURCE_DIR}/zeromq/libzmq.dll DESTINATION ${DFHACK_LIBRARY_DESTINATION}) - -ENDIF() - -DFHACK_PLUGIN(server ${PROJECT_SRCS} LINK_LIBRARIES ${PROJECT_LIBS}) - -add_executable ( helloclient hello.cpp ) -target_link_libraries ( helloclient ${PROJECT_LIBS}) -install(TARGETS helloclient RUNTIME DESTINATION . ) \ No newline at end of file diff --git a/plugins/server/hello.cpp b/plugins/server/hello.cpp deleted file mode 100644 index 7afffb0b1..000000000 --- a/plugins/server/hello.cpp +++ /dev/null @@ -1,39 +0,0 @@ -// -// Hello World client -// Connects REQ socket to tcp://localhost:5555 -// Sends "Hello" to server, expects "World" back -// -#include -#include -#include -//#include - -int main (void) -{ - void *context = zmq_init (1); - - // Socket to talk to server - printf ("Connecting to hello world server...\n"); - void *requester = zmq_socket (context, ZMQ_REQ); - zmq_connect (requester, "tcp://localhost:5555"); - - int request_nbr; - for (request_nbr = 0; request_nbr != 10; request_nbr++) - { - zmq_msg_t request; - zmq_msg_init_size (&request, 5); - memcpy (zmq_msg_data (&request), "Hello", 5); - printf ("Sending Hello %d...\n", request_nbr); - zmq_send (requester, &request, 0); - zmq_msg_close (&request); - - zmq_msg_t reply; - zmq_msg_init (&reply); - zmq_recv (requester, &reply, 0); - printf ("Received World %d\n", request_nbr); - zmq_msg_close (&reply); - } - zmq_close (requester); - zmq_term (context); - return 0; -} diff --git a/plugins/server/main.cpp b/plugins/server/main.cpp deleted file mode 100644 index 23b93c970..000000000 --- a/plugins/server/main.cpp +++ /dev/null @@ -1,79 +0,0 @@ -#include "Core.h" -#include -#include -#include -#include -#ifndef LINUX_BUILD -#include -#endif -using namespace DFHack; - -// Here go all the command declarations... -// mostly to allow having the mandatory stuff on top of the file and commands on the bottom -command_result server (color_ostream &out, std::vector & parameters); - -// A plugins must be able to return its name. This must correspond to the filename - skeleton.plug.so or skeleton.plug.dll -DFHACK_PLUGIN("server"); - -// Mandatory init function. If you have some global state, create it here. -DFhackCExport command_result plugin_init ( color_ostream &out, std::vector &commands) -{ - // Fill the command list with your commands. - commands.clear(); - commands.push_back(PluginCommand("server", - "Inane zeromq example turned into a plugin.", - server)); - return CR_OK; -} - -// This is called right before the plugin library is removed from memory. -DFhackCExport command_result plugin_shutdown ( color_ostream &out ) -{ - // You *MUST* kill all threads you created before this returns. - // If everythin fails, just return CR_FAILURE. Your plugin will be - // in a zombie state, but things won't crash. - return CR_OK; -} - -// This is WRONG and STUPID. Never use this as an example! -command_result server (color_ostream &out, std::vector & parameters) -{ - // It's nice to provide a 'help' option for your command. - // It's also nice to print the same help if you get invalid options from the user instead of just acting strange - for(int i = 0; i < parameters.size();i++) - { - if(parameters[i] == "help" || parameters[i] == "?") - { - // Core has a handle to the console. The console is thread-safe. - // Only one thing can read from it at a time though... - out.print("This command is a simple Hello World example for zeromq!\n"); - return CR_OK; - } - } - // Prepare our context and socket - zmq::context_t context (1); - zmq::socket_t socket (context, ZMQ_REP); - socket.bind ("tcp://*:5555"); - - while (true) - { - zmq::message_t request; - - // Wait for next request from client - socket.recv (&request); - out.print("Received Hello\n"); - - // Do some 'work' -#ifdef LINUX_BUILD - sleep (1); -#else - Sleep(1000); -#endif - - // Send reply back to client - zmq::message_t reply (5); - memcpy ((void *) reply.data (), "World", 5); - socket.send (reply); - } - return CR_OK; -} diff --git a/plugins/server/zeromq/libzmq.a b/plugins/server/zeromq/libzmq.a deleted file mode 100644 index 5efc8a10f..000000000 Binary files a/plugins/server/zeromq/libzmq.a and /dev/null differ diff --git a/plugins/server/zeromq/libzmq.dll b/plugins/server/zeromq/libzmq.dll deleted file mode 100644 index 8452ab8e6..000000000 Binary files a/plugins/server/zeromq/libzmq.dll and /dev/null differ diff --git a/plugins/server/zeromq/libzmq.exp b/plugins/server/zeromq/libzmq.exp deleted file mode 100644 index 97c4e31d8..000000000 Binary files a/plugins/server/zeromq/libzmq.exp and /dev/null differ diff --git a/plugins/server/zeromq/libzmq.la b/plugins/server/zeromq/libzmq.la deleted file mode 100755 index 554fd31b9..000000000 --- a/plugins/server/zeromq/libzmq.la +++ /dev/null @@ -1,41 +0,0 @@ -# libzmq.la - a libtool library file -# Generated by ltmain.sh (GNU libtool) 2.2.6b Debian-2.2.6b-2ubuntu1 -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# The name that we can dlopen(3). -dlname='libzmq.so.1' - -# Names of this library. -library_names='libzmq.so.1.0.0 libzmq.so.1 libzmq.so' - -# The name of the static archive. -old_library='libzmq.a' - -# Linker flags that can not go in dependency_libs. -inherited_linker_flags='' - -# Libraries that this one depends upon. -dependency_libs=' -luuid -lrt -lpthread' - -# Names of additional weak libraries provided by this library -weak_library_names='' - -# Version information for libzmq. -current=1 -age=0 -revision=0 - -# Is this an already installed library? -installed=yes - -# Should we warn about portability when linking against -modules? -shouldnotlink=no - -# Files to dlopen/dlpreopen -dlopen='' -dlpreopen='' - -# Directory that this library needs to be installed in: -libdir='/home/peterix/zeromq/lib' diff --git a/plugins/server/zeromq/libzmq.lib b/plugins/server/zeromq/libzmq.lib deleted file mode 100644 index 968556cba..000000000 Binary files a/plugins/server/zeromq/libzmq.lib and /dev/null differ diff --git a/plugins/server/zeromq/libzmq.so.1 b/plugins/server/zeromq/libzmq.so.1 deleted file mode 100755 index 1bbcc5f3c..000000000 Binary files a/plugins/server/zeromq/libzmq.so.1 and /dev/null differ diff --git a/plugins/server/zeromq/zmq.h b/plugins/server/zeromq/zmq.h deleted file mode 100644 index 0184569c7..000000000 --- a/plugins/server/zeromq/zmq.h +++ /dev/null @@ -1,269 +0,0 @@ -/* - Copyright (c) 2007-2011 iMatix Corporation - Copyright (c) 2007-2011 Other contributors as noted in the AUTHORS file - - This file is part of 0MQ. - - 0MQ is free software; you can redistribute it and/or modify it under - the terms of the GNU Lesser General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - 0MQ is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this program. If not, see . -*/ - -#ifndef __ZMQ_H_INCLUDED__ -#define __ZMQ_H_INCLUDED__ - -#ifdef __cplusplus -extern "C" { -#endif - -#include -#include -#if defined _WIN32 -#include -#endif - -/* Handle DSO symbol visibility */ -#if defined _WIN32 -# if defined DLL_EXPORT -# define ZMQ_EXPORT __declspec(dllexport) -# else -# define ZMQ_EXPORT __declspec(dllimport) -# endif -#else -# if defined __SUNPRO_C || defined __SUNPRO_CC -# define ZMQ_EXPORT __global -# elif (defined __GNUC__ && __GNUC__ >= 4) || defined __INTEL_COMPILER -# define ZMQ_EXPORT __attribute__ ((visibility("default"))) -# else -# define ZMQ_EXPORT -# endif -#endif - -/******************************************************************************/ -/* 0MQ versioning support. */ -/******************************************************************************/ - -/* Version macros for compile-time API version detection */ -#define ZMQ_VERSION_MAJOR 2 -#define ZMQ_VERSION_MINOR 1 -#define ZMQ_VERSION_PATCH 10 - -#define ZMQ_MAKE_VERSION(major, minor, patch) \ - ((major) * 10000 + (minor) * 100 + (patch)) -#define ZMQ_VERSION \ - ZMQ_MAKE_VERSION(ZMQ_VERSION_MAJOR, ZMQ_VERSION_MINOR, ZMQ_VERSION_PATCH) - -/* Run-time API version detection */ -ZMQ_EXPORT void zmq_version (int *major, int *minor, int *patch); - -/******************************************************************************/ -/* 0MQ errors. */ -/******************************************************************************/ - -/* A number random enough not to collide with different errno ranges on */ -/* different OSes. The assumption is that error_t is at least 32-bit type. */ -#define ZMQ_HAUSNUMERO 156384712 - -/* On Windows platform some of the standard POSIX errnos are not defined. */ -#ifndef ENOTSUP -#define ENOTSUP (ZMQ_HAUSNUMERO + 1) -#endif -#ifndef EPROTONOSUPPORT -#define EPROTONOSUPPORT (ZMQ_HAUSNUMERO + 2) -#endif -#ifndef ENOBUFS -#define ENOBUFS (ZMQ_HAUSNUMERO + 3) -#endif -#ifndef ENETDOWN -#define ENETDOWN (ZMQ_HAUSNUMERO + 4) -#endif -#ifndef EADDRINUSE -#define EADDRINUSE (ZMQ_HAUSNUMERO + 5) -#endif -#ifndef EADDRNOTAVAIL -#define EADDRNOTAVAIL (ZMQ_HAUSNUMERO + 6) -#endif -#ifndef ECONNREFUSED -#define ECONNREFUSED (ZMQ_HAUSNUMERO + 7) -#endif -#ifndef EINPROGRESS -#define EINPROGRESS (ZMQ_HAUSNUMERO + 8) -#endif -#ifndef ENOTSOCK -#define ENOTSOCK (ZMQ_HAUSNUMERO + 9) -#endif - -/* Native 0MQ error codes. */ -#define EFSM (ZMQ_HAUSNUMERO + 51) -#define ENOCOMPATPROTO (ZMQ_HAUSNUMERO + 52) -#define ETERM (ZMQ_HAUSNUMERO + 53) -#define EMTHREAD (ZMQ_HAUSNUMERO + 54) - -/* This function retrieves the errno as it is known to 0MQ library. The goal */ -/* of this function is to make the code 100% portable, including where 0MQ */ -/* compiled with certain CRT library (on Windows) is linked to an */ -/* application that uses different CRT library. */ -ZMQ_EXPORT int zmq_errno (void); - -/* Resolves system errors and 0MQ errors to human-readable string. */ -ZMQ_EXPORT const char *zmq_strerror (int errnum); - -/******************************************************************************/ -/* 0MQ message definition. */ -/******************************************************************************/ - -/* Maximal size of "Very Small Message". VSMs are passed by value */ -/* to avoid excessive memory allocation/deallocation. */ -/* If VMSs larger than 255 bytes are required, type of 'vsm_size' */ -/* field in zmq_msg_t structure should be modified accordingly. */ -#define ZMQ_MAX_VSM_SIZE 30 - -/* Message types. These integers may be stored in 'content' member of the */ -/* message instead of regular pointer to the data. */ -#define ZMQ_DELIMITER 31 -#define ZMQ_VSM 32 - -/* Message flags. ZMQ_MSG_SHARED is strictly speaking not a message flag */ -/* (it has no equivalent in the wire format), however, making it a flag */ -/* allows us to pack the stucture tigher and thus improve performance. */ -#define ZMQ_MSG_MORE 1 -#define ZMQ_MSG_SHARED 128 -#define ZMQ_MSG_MASK 129 /* Merges all the flags */ - -/* A message. Note that 'content' is not a pointer to the raw data. */ -/* Rather it is pointer to zmq::msg_content_t structure */ -/* (see src/msg_content.hpp for its definition). */ -typedef struct -{ - void *content; - unsigned char flags; - unsigned char vsm_size; - unsigned char vsm_data [ZMQ_MAX_VSM_SIZE]; -} zmq_msg_t; - -typedef void (zmq_free_fn) (void *data, void *hint); - -ZMQ_EXPORT int zmq_msg_init (zmq_msg_t *msg); -ZMQ_EXPORT int zmq_msg_init_size (zmq_msg_t *msg, size_t size); -ZMQ_EXPORT int zmq_msg_init_data (zmq_msg_t *msg, void *data, - size_t size, zmq_free_fn *ffn, void *hint); -ZMQ_EXPORT int zmq_msg_close (zmq_msg_t *msg); -ZMQ_EXPORT int zmq_msg_move (zmq_msg_t *dest, zmq_msg_t *src); -ZMQ_EXPORT int zmq_msg_copy (zmq_msg_t *dest, zmq_msg_t *src); -ZMQ_EXPORT void *zmq_msg_data (zmq_msg_t *msg); -ZMQ_EXPORT size_t zmq_msg_size (zmq_msg_t *msg); - -/******************************************************************************/ -/* 0MQ infrastructure (a.k.a. context) initialisation & termination. */ -/******************************************************************************/ - -ZMQ_EXPORT void *zmq_init (int io_threads); -ZMQ_EXPORT int zmq_term (void *context); - -/******************************************************************************/ -/* 0MQ socket definition. */ -/******************************************************************************/ - -/* Socket types. */ -#define ZMQ_PAIR 0 -#define ZMQ_PUB 1 -#define ZMQ_SUB 2 -#define ZMQ_REQ 3 -#define ZMQ_REP 4 -#define ZMQ_DEALER 5 -#define ZMQ_ROUTER 6 -#define ZMQ_PULL 7 -#define ZMQ_PUSH 8 -#define ZMQ_XPUB 9 -#define ZMQ_XSUB 10 -#define ZMQ_XREQ ZMQ_DEALER /* Old alias, remove in 3.x */ -#define ZMQ_XREP ZMQ_ROUTER /* Old alias, remove in 3.x */ -#define ZMQ_UPSTREAM ZMQ_PULL /* Old alias, remove in 3.x */ -#define ZMQ_DOWNSTREAM ZMQ_PUSH /* Old alias, remove in 3.x */ - -/* Socket options. */ -#define ZMQ_HWM 1 -#define ZMQ_SWAP 3 -#define ZMQ_AFFINITY 4 -#define ZMQ_IDENTITY 5 -#define ZMQ_SUBSCRIBE 6 -#define ZMQ_UNSUBSCRIBE 7 -#define ZMQ_RATE 8 -#define ZMQ_RECOVERY_IVL 9 -#define ZMQ_MCAST_LOOP 10 -#define ZMQ_SNDBUF 11 -#define ZMQ_RCVBUF 12 -#define ZMQ_RCVMORE 13 -#define ZMQ_FD 14 -#define ZMQ_EVENTS 15 -#define ZMQ_TYPE 16 -#define ZMQ_LINGER 17 -#define ZMQ_RECONNECT_IVL 18 -#define ZMQ_BACKLOG 19 -#define ZMQ_RECOVERY_IVL_MSEC 20 /* opt. recovery time, reconcile in 3.x */ -#define ZMQ_RECONNECT_IVL_MAX 21 - -/* Send/recv options. */ -#define ZMQ_NOBLOCK 1 -#define ZMQ_SNDMORE 2 - -ZMQ_EXPORT void *zmq_socket (void *context, int type); -ZMQ_EXPORT int zmq_close (void *s); -ZMQ_EXPORT int zmq_setsockopt (void *s, int option, const void *optval, - size_t optvallen); -ZMQ_EXPORT int zmq_getsockopt (void *s, int option, void *optval, - size_t *optvallen); -ZMQ_EXPORT int zmq_bind (void *s, const char *addr); -ZMQ_EXPORT int zmq_connect (void *s, const char *addr); -ZMQ_EXPORT int zmq_send (void *s, zmq_msg_t *msg, int flags); -ZMQ_EXPORT int zmq_recv (void *s, zmq_msg_t *msg, int flags); - -/******************************************************************************/ -/* I/O multiplexing. */ -/******************************************************************************/ - -#define ZMQ_POLLIN 1 -#define ZMQ_POLLOUT 2 -#define ZMQ_POLLERR 4 - -typedef struct -{ - void *socket; -#if defined _WIN32 - SOCKET fd; -#else - int fd; -#endif - short events; - short revents; -} zmq_pollitem_t; - -ZMQ_EXPORT int zmq_poll (zmq_pollitem_t *items, int nitems, long timeout); - -/******************************************************************************/ -/* Built-in devices */ -/******************************************************************************/ - -#define ZMQ_STREAMER 1 -#define ZMQ_FORWARDER 2 -#define ZMQ_QUEUE 3 - -ZMQ_EXPORT int zmq_device (int device, void * insocket, void* outsocket); - -#undef ZMQ_EXPORT - -#ifdef __cplusplus -} -#endif - -#endif - diff --git a/plugins/server/zeromq/zmq.hpp b/plugins/server/zeromq/zmq.hpp deleted file mode 100644 index e147b0edc..000000000 --- a/plugins/server/zeromq/zmq.hpp +++ /dev/null @@ -1,301 +0,0 @@ -/* - Copyright (c) 2007-2011 iMatix Corporation - Copyright (c) 2007-2011 Other contributors as noted in the AUTHORS file - - This file is part of 0MQ. - - 0MQ is free software; you can redistribute it and/or modify it under - the terms of the GNU Lesser General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - 0MQ is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this program. If not, see . -*/ - -#ifndef __ZMQ_HPP_INCLUDED__ -#define __ZMQ_HPP_INCLUDED__ - -#include "zmq.h" - -#include -#include -#include - -namespace zmq -{ - - typedef zmq_free_fn free_fn; - typedef zmq_pollitem_t pollitem_t; - - class error_t : public std::exception - { - public: - - error_t () : errnum (zmq_errno ()) {} - - virtual const char *what () const throw () - { - return zmq_strerror (errnum); - } - - int num () const - { - return errnum; - } - - private: - - int errnum; - }; - - inline int poll (zmq_pollitem_t *items_, int nitems_, long timeout_ = -1) - { - int rc = zmq_poll (items_, nitems_, timeout_); - if (rc < 0) - throw error_t (); - return rc; - } - - inline void device (int device_, void * insocket_, void* outsocket_) - { - int rc = zmq_device (device_, insocket_, outsocket_); - if (rc != 0) - throw error_t (); - } - - inline void version (int *major_, int *minor_, int *patch_) - { - zmq_version (major_, minor_, patch_); - } - - class message_t : private zmq_msg_t - { - friend class socket_t; - - public: - - inline message_t () - { - int rc = zmq_msg_init (this); - if (rc != 0) - throw error_t (); - } - - inline message_t (size_t size_) - { - int rc = zmq_msg_init_size (this, size_); - if (rc != 0) - throw error_t (); - } - - inline message_t (void *data_, size_t size_, free_fn *ffn_, - void *hint_ = NULL) - { - int rc = zmq_msg_init_data (this, data_, size_, ffn_, hint_); - if (rc != 0) - throw error_t (); - } - - inline ~message_t () - { - int rc = zmq_msg_close (this); - assert (rc == 0); - } - - inline void rebuild () - { - int rc = zmq_msg_close (this); - if (rc != 0) - throw error_t (); - rc = zmq_msg_init (this); - if (rc != 0) - throw error_t (); - } - - inline void rebuild (size_t size_) - { - int rc = zmq_msg_close (this); - if (rc != 0) - throw error_t (); - rc = zmq_msg_init_size (this, size_); - if (rc != 0) - throw error_t (); - } - - inline void rebuild (void *data_, size_t size_, free_fn *ffn_, - void *hint_ = NULL) - { - int rc = zmq_msg_close (this); - if (rc != 0) - throw error_t (); - rc = zmq_msg_init_data (this, data_, size_, ffn_, hint_); - if (rc != 0) - throw error_t (); - } - - inline void move (message_t *msg_) - { - int rc = zmq_msg_move (this, (zmq_msg_t*) msg_); - if (rc != 0) - throw error_t (); - } - - inline void copy (message_t *msg_) - { - int rc = zmq_msg_copy (this, (zmq_msg_t*) msg_); - if (rc != 0) - throw error_t (); - } - - inline void *data () - { - return zmq_msg_data (this); - } - - inline size_t size () - { - return zmq_msg_size (this); - } - - private: - - // Disable implicit message copying, so that users won't use shared - // messages (less efficient) without being aware of the fact. - message_t (const message_t&); - void operator = (const message_t&); - }; - - class context_t - { - friend class socket_t; - - public: - - inline context_t (int io_threads_) - { - ptr = zmq_init (io_threads_); - if (ptr == NULL) - throw error_t (); - } - - inline ~context_t () - { - int rc = zmq_term (ptr); - assert (rc == 0); - } - - // Be careful with this, it's probably only useful for - // using the C api together with an existing C++ api. - // Normally you should never need to use this. - inline operator void* () - { - return ptr; - } - - private: - - void *ptr; - - context_t (const context_t&); - void operator = (const context_t&); - }; - - class socket_t - { - public: - - inline socket_t (context_t &context_, int type_) - { - ptr = zmq_socket (context_.ptr, type_); - if (ptr == NULL) - throw error_t (); - } - - inline ~socket_t () - { - close(); - } - - inline operator void* () - { - return ptr; - } - - inline void close() - { - if(ptr == NULL) - // already closed - return ; - int rc = zmq_close (ptr); - if (rc != 0) - throw error_t (); - ptr = 0 ; - } - - inline void setsockopt (int option_, const void *optval_, - size_t optvallen_) - { - int rc = zmq_setsockopt (ptr, option_, optval_, optvallen_); - if (rc != 0) - throw error_t (); - } - - inline void getsockopt (int option_, void *optval_, - size_t *optvallen_) - { - int rc = zmq_getsockopt (ptr, option_, optval_, optvallen_); - if (rc != 0) - throw error_t (); - } - - inline void bind (const char *addr_) - { - int rc = zmq_bind (ptr, addr_); - if (rc != 0) - throw error_t (); - } - - inline void connect (const char *addr_) - { - int rc = zmq_connect (ptr, addr_); - if (rc != 0) - throw error_t (); - } - - inline bool send (message_t &msg_, int flags_ = 0) - { - int rc = zmq_send (ptr, &msg_, flags_); - if (rc == 0) - return true; - if (rc == -1 && zmq_errno () == EAGAIN) - return false; - throw error_t (); - } - - inline bool recv (message_t *msg_, int flags_ = 0) - { - int rc = zmq_recv (ptr, msg_, flags_); - if (rc == 0) - return true; - if (rc == -1 && zmq_errno () == EAGAIN) - return false; - throw error_t (); - } - - private: - - void *ptr; - - socket_t (const socket_t&); - void operator = (const socket_t&); - }; - -} - -#endif diff --git a/plugins/server/zeromq/zmq_utils.h b/plugins/server/zeromq/zmq_utils.h deleted file mode 100644 index 6d8a45898..000000000 --- a/plugins/server/zeromq/zmq_utils.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - Copyright (c) 2007-2011 iMatix Corporation - Copyright (c) 2007-2011 Other contributors as noted in the AUTHORS file - - This file is part of 0MQ. - - 0MQ is free software; you can redistribute it and/or modify it under - the terms of the GNU Lesser General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - 0MQ is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public License - along with this program. If not, see . -*/ - -#ifndef __ZMQ_UTILS_H_INCLUDED__ -#define __ZMQ_UTILS_H_INCLUDED__ - -#ifdef __cplusplus -extern "C" { -#endif - -/* Handle DSO symbol visibility */ -#if defined _WIN32 -# if defined DLL_EXPORT -# define ZMQ_EXPORT __declspec(dllexport) -# else -# define ZMQ_EXPORT __declspec(dllimport) -# endif -#else -# if defined __SUNPRO_C || defined __SUNPRO_CC -# define ZMQ_EXPORT __global -# elif (defined __GNUC__ && __GNUC__ >= 4) || defined __INTEL_COMPILER -# define ZMQ_EXPORT __attribute__ ((visibility("default"))) -# else -# define ZMQ_EXPORT -# endif -#endif - -/* Helper functions are used by perf tests so that they don't have to care */ -/* about minutiae of time-related functions on different OS platforms. */ - -/* Starts the stopwatch. Returns the handle to the watch. */ -ZMQ_EXPORT void *zmq_stopwatch_start (void); - -/* Stops the stopwatch. Returns the number of microseconds elapsed since */ -/* the stopwatch was started. */ -ZMQ_EXPORT unsigned long zmq_stopwatch_stop (void *watch_); - -/* Sleeps for specified number of seconds. */ -ZMQ_EXPORT void zmq_sleep (int seconds_); - -#undef ZMQ_EXPORT - -#ifdef __cplusplus -} -#endif - -#endif