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

54 lines
1.4 KiB
C++
Executable File

/**
* @RDE_HEADER@
* main for ParticipantManagement
* $Id$
* $HeadURL$
* $Author$
* Created by Hannes Baeuerle, SLSE, 2016-08-09
*/
#pragma once
#include <QtCore/QObject>
#include <QtCore/QVector>
#include <NGLLogger/INGLLogger.h>
#include <ParticipantManagement/ppm_dtc.h>
#include <nglapplication/nglcoreapplication.h>
#include <proxy_emulator.h>
class QTimer;
namespace VulnerabilityStateGenerator
{
class MainHandler
: public QObject
{
Q_OBJECT
public:
explicit MainHandler(QObject *parent = nullptr);
~MainHandler();
bool init(int32_t domainId, int32_t exerciseId);
private: // methods
void quit();
ProjectDataManagement::VulnerabilityState randomVulnerabilityState();
void fillMapFromEnum();
private Q_SLOTS:
void setNewState();
private: // attributes
int32_t m_domainId;
int32_t m_exerciseId;
std::shared_ptr<DDSConnector::DdsConnector> m_ddsConnector;
std::shared_ptr<ParticipantManagement::Interface::Dtc> m_ppmDtc;
ProxyEmulator *m_proxyEmulator;
QMap<qint32, ProjectDataManagement::VulnerabilityState> m_vsMap;
QMap<qint32,ParticipantManagement::Participant> m_partMap;
QTimer *m_genTimer;
NGL::INGLLogger &m_logger;
};
}