Files
qt5-legatus-legacy/TetraIF/PrtCnv/TetraTestServer/server.h
T
2026-08-13 18:33:10 +02:00

60 lines
1.2 KiB
C++

/*
* @RDE_HEADER@
* Listen Server for Tetra Simulation
* $Id$
* $HeadURL$
* $Author$
*/
#pragma once
#include <QtCore/QPointF>
#include <QtNetwork/QTcpServer>
#include <QtCore/QSettings>
#include <nglsettings/nglsettings_settings.h>
#include <NGLLogger/INGLLogger.h>
struct runningPattern
{
int steps = 0;
int ethering = 0;
int northering = 0;
};
struct TTSArgs
{
QPointF position;
QString pattern;
QSettings *settings = nullptr;
int destIssi = 0;
unsigned int cntPlayer = 0;
unsigned int eqIdStart = 0;
unsigned int minimumDeathTicks = 0;
unsigned int maximumDeathTicks = 0;
unsigned int pprow = 0;
unsigned int pspacing = 0;
unsigned int movs_per_msec = ~0U;
unsigned int minimumMineId = 0;
unsigned int maximumMineId = 0;
bool demandOldBraodcastTelegrams = false;
int demandOldBraodcastTelegramsCounter = 0;
bool deactivationSingleMines = false;
};
class TTServer : public QTcpServer
{
Q_OBJECT
public:
explicit TTServer(const TTSArgs &m_ttsArgs);
protected Q_SLOTS:
void onNewConnection();
void onDisconnect();
protected:
TTSArgs m_ttsArgs;
NGL::INGLLogger &m_logger;
};