summaryrefslogtreecommitdiffhomepage
path: root/proto-udp/ftnoir_protocol_ftn.h
diff options
context:
space:
mode:
Diffstat (limited to 'proto-udp/ftnoir_protocol_ftn.h')
-rw-r--r--proto-udp/ftnoir_protocol_ftn.h39
1 files changed, 23 insertions, 16 deletions
diff --git a/proto-udp/ftnoir_protocol_ftn.h b/proto-udp/ftnoir_protocol_ftn.h
index 383b4ed7..ca387a37 100644
--- a/proto-udp/ftnoir_protocol_ftn.h
+++ b/proto-udp/ftnoir_protocol_ftn.h
@@ -11,13 +11,10 @@
#pragma once
#include "ui_ftnoir_ftncontrols.h"
-#include <QThread>
-#include <QUdpSocket>
-#include <QMessageBox>
-#include <cmath>
#include "api/plugin-api.hpp"
#include "options/options.hpp"
using namespace options;
+#include <QUdpSocket>
struct settings : opts {
value<int> ip1, ip2, ip3, ip4, port;
@@ -31,28 +28,37 @@ struct settings : opts {
{}
};
-class udp : public IProtocol
+class udp : public QObject, public IProtocol
{
+ Q_OBJECT
+
public:
udp();
- bool correct();
- void pose(const double *headpose);
- QString game_name() {
- return QCoreApplication::translate("udp", "UDP Tracker");
- }
+ module_status initialize() override;
+ void pose(const double *headpose, const double*) override;
+ QString game_name() override { return tr("UDP over network"); }
private:
QUdpSocket outSocket;
settings s;
+
+ mutable QMutex lock;
+
+ QHostAddress dest_ip { 127u << 24 | 1u };
+ unsigned short dest_port = 65535;
+
+private slots:
+ void set_dest_address();
};
// Widget that has controls for FTNoIR protocol client-settings.
class FTNControls: public IProtocolDialog
{
Q_OBJECT
+
public:
FTNControls();
- void register_protocol(IProtocol *) {}
- void unregister_protocol() {}
+ void register_protocol(IProtocol *) override {}
+ void unregister_protocol() override {}
private:
Ui::UICFTNControls ui;
settings s;
@@ -61,9 +67,10 @@ private slots:
void doCancel();
};
-class udpDll : public Metadata
+class udp_sender_dll : public Metadata
{
-public:
- QString name() { return QString(QCoreApplication::translate("udpDll", "UDP receiver")); }
- QIcon icon() { return QIcon(":/images/facetracknoir.png"); }
+ Q_OBJECT
+
+ QString name() override { return tr("UDP over network"); }
+ QIcon icon() override { return QIcon(":/images/opentrack.png"); }
};