Files
qt5-legatus-legacy/Lts/Tools/Adler/WebSocketSimulator/awss_icd_test.h
T
2026-08-13 18:33:10 +02:00

107 lines
3.5 KiB
C++
Executable File

/**
* @RDE_HEADER@
* Main Test UI for ADLER WebsocketSimulator
* $Id$
* $HeadURL$
* $Author$
* Created by Patric Karwat, ESZS, 2025-03-03
*/
#pragma once
#include <QTimer>
#include <QWidget>
namespace Ui
{
class ICDTest;
}
namespace AdlerJson
{
struct EXTelegramBase;
enum class Szenarstatus;
} // namespace AdlerJson
namespace AdlerWebSocketSimulator
{
class ICDTest : public QWidget
{
Q_OBJECT
public:
explicit ICDTest(QWidget *parent = nullptr);
~ICDTest();
void initParty(int partyId, const QString &name, int saaId);
void messsageFromProxy(const QString &message);
signals:
void messsageToProxy(const QString &message);
void doRestart();
private slots:
void generateConnectMessage();
void generateConnectMessageStandalone();
void sendDirectInputMessage();
void generateDisconnectMessage();
void generateTechnischeQuittierung();
void generateStatusMessageStop();
void generateStatusMessagePlanned();
void generateStatusMessageInactive();
void generateStatusMessageActive();
void generateStatusMessage(AdlerJson::Szenarstatus status);
void generateConnectionTestMessage();
// fire
void generateEXFQBABBFK(); // Planungsdaten
void generateEXFQBABBFK_Gmlrs(); // Planungsdaten Gmlrs
void generateEXFQBABBFK_Dm72(); // Planungsdaten DM72
void generateEXFQBABBFK_ESG(); // Planungsdaten Original ESG-Telegramm
void generateEXFQBABBFK_SMART_ESG(); // Planungsdaten SMART Original ESG-Telegramm
void generateEXFQFN(); // Feuern
void generateEXFQFN_Gmlrs(); // Feuern Gmlrs
void generateEXFQFN_Dm72(); // Feuern DM72
void generateEXFQFN_ESG(); // Feuern Original ESG-Telegramm
void generateFlugbahndaten_ESG();
void generateEXFH(); // Feuer Halt / Einstellen
void generateEXSQFS(); // Stellungsmeldung Feuerstellung
void generateEXSQWS(); // Stellungsmeldung Waffensystem
void generateEXSQWS_Gmlrs(); // Stellungsmeldung Waffensystem Gmlrs
void generateEXSQWS_dm72(); // Stellungsmeldung Waffensystem DM72
void generateEXSQWS_ESG(); // Stellungsmeldung Waffensystem
// dont fire
void generateEXFQnFN(); // Nicht Feuern -> wird ausgeführt wenn Feuerhalt ausgeführt wurde
// special EXSQWS
void generateEXSQWS_8MTP(); // Stellungsmeldung Waffensystem
void generateEXSQLP(); // Stellungsmeldung Ladeplatz
void generateEXRES(); // Senden Erkundungsergebnisse
void generateEXHQK(); // Fuehrungslinien (Koordinierungsmassnahmen zur Feuerunterstuetzung)
void generateEXHQ_G_ALLE_EX_L24(); // EX-HQ(G) Aus Jira-Punkt E01562_388
void generateEXHQ_K_ALLE_EX_L25(); // EX-HQ(K) Aus Jira-Punkt E01562_388
void generateEXHQG(); // Fuehrungslinien und Grenzen
void generateEXAQ(); // Freitextmeldung
void generateEXFlugbahnberechnung(); // Flugbahnberechnung
void generateEXFlugbahndaten(); // Flugbahndaten
void onSendHeartbeatChanged();
private:
void generateConnectionPage();
void generateEsgPage();
void generateFirePage();
void generatePositionReportsPage();
void generateTrajectoryGenerationPage();
void generateTextMessagePage();
void generateErkundungsergebnissePage();
void generateStatusPage();
void generateEXSQWS_1WS(const QString &verein, const QString &kenner);
private:
Ui::ICDTest *m_ui;
int m_partyId{0};
int m_saaId{0};
QTimer m_heartbeatTimer;
QString m_lastFeuerkampfReferenz;
QString m_fixedReference;
};
} // namespace AdlerWebSocketSimulator