Complete Qt6 migration: full clean build green across groups G1-G12 incl. runtime plugin set

new_docker_build.sh gains Group 12 (212 GUI/Data plugins); fixes LtsUtilsGuiDds visibility (LTO-stripped exports), LtsProjectionWorkstation unity name shadow, 6 unity-off dirs (dup file-scope statics, ddsftc INTERFACE sources) and reconfigures BUILD_FILTERMANAGEMENT/BUILD_PLUGINS_SERVICEMONITOR=ON
This commit is contained in:
berrux-dev committed 2026-10-20 09:36:57 +02:00
1 parent eb1d949edc
commit 815e16368e
1718 files changed
+126739 -18495

No files matched your search

@@ -62,7 +62,7 @@ void AesHandler::onAirSupportImpact(AirSupportImpactModifyRequest asi, int equip
{
asi.participantId(m_dtcPpm->participantIdByEquipmentNumber(equipmentNumber));
if (!asi.externalId().is_set())
if (!asi.externalId().has_value())
return;
m_requestHelper->startSingleRequest([this, asi]()
@@ -7,6 +7,7 @@
#include <AreaEffectSimulation/aes_dtc.h>
#include <AreaEffectSimulation/aes_ftc.h>
#include <ParticipantManagement/ppm.hpp>
#include <ParticipantManagement/ppm_dtc.h>
#include <LtsUtils/LtsUtilsGui/LtsUtilsGuiDds/request_helper.h>
@@ -30,16 +30,16 @@ ProjectDataManagement::VulnerabilityState DamageModel::vulnerabilityStateFromDam
switch(status)
{
case rpr2::DamageStatusEnum32::NoDamage:
vs = ProjectDataManagement::VulnerabilityState::CombatReady;
vs = ProjectDataManagement::VulnerabilityState::VulnerabilityState_CombatReady;
break;
case rpr2::DamageStatusEnum32::SlightDamage:
vs = ProjectDataManagement::VulnerabilityState::LightDamage;
vs = ProjectDataManagement::VulnerabilityState::VulnerabilityState_LightDamage;
break;
case rpr2::DamageStatusEnum32::ModerateDamage:
vs = ProjectDataManagement::VulnerabilityState::HeavyDamage;
vs = ProjectDataManagement::VulnerabilityState::VulnerabilityState_HeavyDamage;
break;
case rpr2::DamageStatusEnum32::Destroyed:
vs = ProjectDataManagement::VulnerabilityState::CatastrophicKill;
vs = ProjectDataManagement::VulnerabilityState::VulnerabilityState_CatastrophicKill;
break;
}
@@ -61,33 +61,33 @@ rpr2::DamageStatusEnum32::ET DamageModel::damageState(qint64 simTimeMSec) const
return rpr2::DamageStatusEnum32::NoDamage;
switch (m_vulnerabilityStates.at(idx).vulnerabilityState.underlying())
switch (m_vulnerabilityStates.at(idx).vulnerabilityState)
{
case ProjectDataManagement::VulnerabilityState::CombatReady:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_CombatReady:
return rpr2::DamageStatusEnum32::NoDamage;
case ProjectDataManagement::VulnerabilityState::LightDamage:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_LightDamage:
return rpr2::DamageStatusEnum32::SlightDamage;
case ProjectDataManagement::VulnerabilityState::MediumDamage:
case ProjectDataManagement::VulnerabilityState::HeavyDamage:
case ProjectDataManagement::VulnerabilityState::MobilityKill:
case ProjectDataManagement::VulnerabilityState::VisibleMobilityKill:
case ProjectDataManagement::VulnerabilityState::WeaponSystemDamage:
case ProjectDataManagement::VulnerabilityState::VisibleWeaponSystemDamage:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_MediumDamage:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_HeavyDamage:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_MobilityKill:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_VisibleMobilityKill:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_WeaponSystemDamage:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_VisibleWeaponSystemDamage:
return rpr2::DamageStatusEnum32::ModerateDamage;
case ProjectDataManagement::VulnerabilityState::CatastrophicKill:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_CatastrophicKill:
return rpr2::DamageStatusEnum32::Destroyed;
case ProjectDataManagement::VulnerabilityState::TemporarySeverance:
case ProjectDataManagement::VulnerabilityState::NearMiss:
case ProjectDataManagement::VulnerabilityState::HitWithNoEffect:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_TemporarySeverance:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_NearMiss:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_HitWithNoEffect:
return rpr2::DamageStatusEnum32::NoDamage;
case ProjectDataManagement::VulnerabilityState::VulnerabilityBitsChanged:
case ProjectDataManagement::VulnerabilityState::Reserved:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_VulnerabilityBitsChanged:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_Reserved:
return rpr2::DamageStatusEnum32::NoDamage;
case ProjectDataManagement::VulnerabilityState::NContamination:
case ProjectDataManagement::VulnerabilityState::BContamination:
case ProjectDataManagement::VulnerabilityState::CContamination:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_NContamination:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_BContamination:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_CContamination:
return rpr2::DamageStatusEnum32::SlightDamage;
case ProjectDataManagement::VulnerabilityState::NotReady:
case ProjectDataManagement::VulnerabilityState::VulnerabilityState_NotReady:
return rpr2::DamageStatusEnum32::NoDamage;
}
return rpr2::DamageStatusEnum32::NoDamage;
@@ -98,9 +98,9 @@ bool DamageModel::immobilized(qint64 simTimeMSec) const
int idx = indexForTime(simTimeMSec);
if (idx < 0)
return false;
if (m_vulnerabilityStates.at(idx).vulnerabilityState == ProjectDataManagement::VulnerabilityState::MobilityKill ||
m_vulnerabilityStates.at(idx).vulnerabilityState == ProjectDataManagement::VulnerabilityState::VisibleMobilityKill ||
m_vulnerabilityStates.at(idx).vulnerabilityState == ProjectDataManagement::VulnerabilityState::CatastrophicKill)
if (m_vulnerabilityStates.at(idx).vulnerabilityState == ProjectDataManagement::VulnerabilityState::VulnerabilityState_MobilityKill ||
m_vulnerabilityStates.at(idx).vulnerabilityState == ProjectDataManagement::VulnerabilityState::VulnerabilityState_VisibleMobilityKill ||
m_vulnerabilityStates.at(idx).vulnerabilityState == ProjectDataManagement::VulnerabilityState::VulnerabilityState_CatastrophicKill)
return true;
return false;
}
@@ -110,9 +110,9 @@ bool DamageModel::firePowerDisabled(qint64 simTimeMSec) const
int idx = indexForTime(simTimeMSec);
if (idx < 0)
return false;
if (m_vulnerabilityStates.at(idx).vulnerabilityState == ProjectDataManagement::VulnerabilityState::WeaponSystemDamage ||
m_vulnerabilityStates.at(idx).vulnerabilityState == ProjectDataManagement::VulnerabilityState::VisibleWeaponSystemDamage ||
m_vulnerabilityStates.at(idx).vulnerabilityState == ProjectDataManagement::VulnerabilityState::CatastrophicKill)
if (m_vulnerabilityStates.at(idx).vulnerabilityState == ProjectDataManagement::VulnerabilityState::VulnerabilityState_WeaponSystemDamage ||
m_vulnerabilityStates.at(idx).vulnerabilityState == ProjectDataManagement::VulnerabilityState::VulnerabilityState_VisibleWeaponSystemDamage ||
m_vulnerabilityStates.at(idx).vulnerabilityState == ProjectDataManagement::VulnerabilityState::VulnerabilityState_CatastrophicKill)
return true;
return false;
}
@@ -149,7 +149,7 @@ ProjectDataManagement::VulnerabilityState DamageModel::vulnerabilityState(qint64
{
int idx = indexForTime(simTimeMSec);
if (idx < 0)
return ProjectDataManagement::VulnerabilityState::CombatReady;
return ProjectDataManagement::VulnerabilityState::VulnerabilityState_CombatReady;
return m_vulnerabilityStates.at(idx).vulnerabilityState;
}
@@ -26,7 +26,7 @@ public:
explicit DamageModel(const ProjectDataManagement::VulnerabilityState &state);
explicit DamageModel(const IdentifierStruct &is, const rpr2::DamageStatusEnum32::ET &status);
explicit DamageModel(const IdentifierStruct &is)
: DamageModel(is, ProjectDataManagement::VulnerabilityState::CombatReady)
: DamageModel(is, ProjectDataManagement::VulnerabilityState::VulnerabilityState_CombatReady)
{}
const IdentifierStruct &identifierStruct() const { return m_is; }
@@ -3,6 +3,7 @@
#include "ngs_connector.h"
#include <NGLLogger/NGLLoggerBootstrap.h>
#include <utility>
#include "ngs_handler.h"
#include "ppm_handler.h"
@@ -986,10 +987,10 @@ void NgsConnector::onBaseEntityEntityIdentifierChanged(const rpr2::EntityIdentif
GuezHitStruct hs;
hs.originatorType = ProjectDataManagement::StateChangeOriginator::Initialization;
hs.originatorType = ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_Initialization;
hs.sampleTime = QDateTime::currentDateTimeUtc().toMSecsSinceEpoch();
hs.targetId = is.entityNumber();
hs.vulnerabilityState = ProjectDataManagement::VulnerabilityState::VulnerabilityBitsChanged;
hs.vulnerabilityState = ProjectDataManagement::VulnerabilityState::VulnerabilityState_VulnerabilityBitsChanged;
QTimer::singleShot(STATUS_WAIT_INTERVAL, this, [this, hs, obj, simTimeMSecs]() mutable
{
@@ -1048,10 +1049,10 @@ void NgsConnector::onEmbeddedSystemEntityIdentifierChanged(const rpr2::EntityIde
GuezHitStruct hs;
hs.originatorType = ProjectDataManagement::StateChangeOriginator::Initialization;
hs.originatorType = ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_Initialization;
hs.sampleTime = QDateTime::currentDateTimeUtc().toMSecsSinceEpoch();
hs.targetId = is.entityNumber();
hs.vulnerabilityState = ProjectDataManagement::VulnerabilityState::VulnerabilityBitsChanged;
hs.vulnerabilityState = ProjectDataManagement::VulnerabilityState::VulnerabilityState_VulnerabilityBitsChanged;
QTimer::singleShot(STATUS_WAIT_INTERVAL, this, [this, hs, obj, simTimeMSecs]() mutable
{
@@ -1149,11 +1150,11 @@ bool NgsConnector::onDamageStateChanged(const rpr2::EntityIdentifierStruct &eis,
GuezHitStruct hitStruct;
hitStruct.originatorChargeTypeEtsString = TypeStruct::fromDisInt(0).toString();
hitStruct.originatorId = 0;
hitStruct.originatorType = ProjectDataManagement::StateChangeOriginator::Unknown;
hitStruct.originatorType = ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_Unknown;
hitStruct.position = m_observerPositions[is.entityNumber()].toGeoPosition();
hitStruct.sampleTime = simTimeMSecs;
hitStruct.targetId = is.entityNumber();
hitStruct.vulnerabilityState = ProjectDataManagement::VulnerabilityState::VulnerabilityBitsChanged;
hitStruct.vulnerabilityState = ProjectDataManagement::VulnerabilityState::VulnerabilityState_VulnerabilityBitsChanged;
hitStruct.vulnerabilityKind = 0;
@@ -1317,7 +1318,7 @@ void NgsConnector::onNewEngagementReply(const rpr2::IObserverEngagementReplyIntI
if (sender > 0)
{
state.originatorId(sender);
state.originatorType(ProjectDataManagement::StateChangeOriginator::Participant);
state.originatorType(ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_Participant);
}
else
{
@@ -1326,35 +1327,35 @@ void NgsConnector::onNewEngagementReply(const rpr2::IObserverEngagementReplyIntI
if (source == QLatin1String("excon"))
{
state.originatorId(0);
state.originatorType(ProjectDataManagement::StateChangeOriginator::ExerciseControl);
state.originatorType(ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_ExerciseControl);
}
else if (source == QLatin1String("cis"))
{
state.originatorId(1);
state.originatorType(ProjectDataManagement::StateChangeOriginator::ExerciseControl);
state.originatorType(ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_ExerciseControl);
}
else if (source == QLatin1String("greenkey"))
{
state.originatorId(0);
state.originatorType(ProjectDataManagement::StateChangeOriginator::ObserverController);
state.originatorType(ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_ObserverController);
}
else if (source == QLatin1String("optical"))
{
state.originatorId(0);
state.originatorType(ProjectDataManagement::StateChangeOriginator::ObserverController);
state.originatorType(ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_ObserverController);
}
else
{
state.originatorId(2);
state.originatorType(ProjectDataManagement::StateChangeOriginator::ExerciseControl);
state.originatorType(ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_ExerciseControl);
}
}
state.sampleTime(simTimeToMSec(interaction.getReceiveTimeStamp()));
DamageModel dm(IdentifierStruct(0), interaction.getResultingDamageState());
const auto ds = dm.vulnerabilityState(QDateTime::currentMSecsSinceEpoch());
state.vulnerabilityBits(1 << ds.underlying());
state.vulnerabilityBits(1 << ds);
state.vulnerabilityKindId();
state.vulnerabilityState(ds);
@@ -1707,17 +1708,17 @@ bool NgsConnector::setParticipantHit(int eqNo, const ParticipantManagement::Stat
switch (originatorType.underlying()) {
case ProjectDataManagement::StateChangeOriginator::AreaEffectSimulation:
switch (originatorType) {
case ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_AreaEffectSimulation:
{
break;
}
case ProjectDataManagement::StateChangeOriginator::ExerciseControl:
case ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_ExerciseControl:
break;
case ProjectDataManagement::StateChangeOriginator::ObserverController:
case ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_ObserverController:
break;
case ProjectDataManagement::StateChangeOriginator::Participant:
if (originatorType == ProjectDataManagement::StateChangeOriginator::Participant)
case ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_Participant:
if (originatorType == ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_Participant)
{
if (m_playerMap.contains(originatorEqNo))
is = IdentifierStruct(originatorEqNo);
@@ -1731,14 +1732,14 @@ bool NgsConnector::setParticipantHit(int eqNo, const ParticipantManagement::Stat
break;
}
Q_FALLTHROUGH();
case ProjectDataManagement::StateChangeOriginator::Initialization:
case ProjectDataManagement::StateChangeOriginator::FunctionalArea:
case ProjectDataManagement::StateChangeOriginator::MaintainanceDevice:
case ProjectDataManagement::StateChangeOriginator::Unknown:
case ProjectDataManagement::StateChangeOriginator::WoundTreatmentDevice:
case ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_Initialization:
case ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_FunctionalArea:
case ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_MaintainanceDevice:
case ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_Unknown:
case ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_WoundTreatmentDevice:
case ProjectDataManagement::StateChangeOriginator::ImprovisedExplosiveDevice:
case ProjectDataManagement::StateChangeOriginator::DusMine:
case ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_ImprovisedExplosiveDevice:
case ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_DusMine:
break;
}
@@ -2,6 +2,7 @@
#include "ngs_handler.h"
#include <NGLLogger/NGLLoggerBootstrap.h>
#include <utility>
#include <Common/logger.h>
#include "ngs_connector.h"
@@ -150,7 +150,7 @@ int PpmHandler::getEquipmentNo(int participantId) const
return 0;
const ParticipantManagement::Participant &p = m_partData[participantId];
if (!p.equipmentNumber().is_set())
if (!p.equipmentNumber().has_value())
return 0;
return p.equipmentNumber().get();
@@ -192,7 +192,7 @@ void PpmHandler::onDynamicParticipantDataChanged(const ParticipantManagement::Dy
if (oldStateInfo != newStateInfo)
{
m_dynPartData[data.participantId()] = data;
if (newStateInfo.originatorType() == ProjectDataManagement::StateChangeOriginator::AreaEffectSimulation)
if (newStateInfo.originatorType() == ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_AreaEffectSimulation)
{
conn->setParticipantHit(equipmentNo,
@@ -202,7 +202,7 @@ void PpmHandler::onDynamicParticipantDataChanged(const ParticipantManagement::Dy
newStateInfo.originatorType(),
newStateInfo.originatorId());
}
else if (newStateInfo.originatorType() == ProjectDataManagement::StateChangeOriginator::Participant)
else if (newStateInfo.originatorType() == ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_Participant)
{
conn->setParticipantHit(equipmentNo,
@@ -262,15 +262,15 @@ void PpmHandler::onParticipantChanged(const ParticipantManagement::Participant &
}
int oldEqNo = m_partData[data.id()].equipmentNumber().is_set() ? m_partData[data.id()].equipmentNumber().get() : 0;
int newEqNo = data.equipmentNumber().is_set() ? data.equipmentNumber().get() : 0;
int oldEqNo = m_partData[data.id()].equipmentNumber().has_value() ? m_partData[data.id()].equipmentNumber().get() : 0;
int newEqNo = data.equipmentNumber().has_value() ? data.equipmentNumber().get() : 0;
if (oldEqNo != newEqNo)
{
removeParticipant(m_partData[data.id()]);
createParticipant(data);
}
if (m_partData[data.id()].designator() != data.designator() && data.equipmentNumber().is_set())
if (m_partData[data.id()].designator() != data.designator() && data.equipmentNumber().has_value())
m_ngsHandler->ngsConnector()->setParticipantName(data.equipmentNumber().get(), QString::fromStdString(data.designator()));
m_partData[data.id()] = data;
@@ -286,7 +286,7 @@ void PpmHandler::onParticipantChanged(const ParticipantManagement::Participant &
if (it == m_externalEquipmentNumbers.end())
{
if (modType == DataModification::eRemoved || !data.equipmentNumber().is_set() || data.externalId() <= 0)
if (modType == DataModification::eRemoved || !data.equipmentNumber().has_value() || data.externalId() <= 0)
return;
int equipNo = data.equipmentNumber().get();
m_externalEquipmentNumbers.insert(data.id(), equipNo);
@@ -296,7 +296,7 @@ void PpmHandler::onParticipantChanged(const ParticipantManagement::Participant &
{
int oldEquipNo = it.value();
if (modType == DataModification::eRemoved || !data.equipmentNumber().is_set() || data.externalId() <= 0)
if (modType == DataModification::eRemoved || !data.equipmentNumber().has_value() || data.externalId() <= 0)
{
m_externalEquipmentNumbers.erase(it);
emit externalEquipmentNumberRemoved(oldEquipNo);
@@ -512,7 +512,7 @@ void PpmHandler::createParticipant(const ParticipantManagement::Participant &par
const ParticipantManagement::Type partType = getParticipantType(participant.typeId());
bool bCreated;
switch (partType.typeClass().underlying())
switch (partType.typeClass())
{
case ParticipantManagement::TypeClass::Human:
bCreated = createHuman(participant);
@@ -544,7 +544,7 @@ void PpmHandler::createParticipant(const ParticipantManagement::Participant &par
bool PpmHandler::removeParticipant(const ParticipantManagement::Participant &participant)
{
if (!participant.equipmentNumber().is_set() || participant.equipmentNumber().get() == 0)
if (!participant.equipmentNumber().has_value() || participant.equipmentNumber().get() == 0)
return false;
return m_ngsHandler->ngsConnector()->removeBaseEntity(participant.equipmentNumber().get());
@@ -617,7 +617,7 @@ ProjectDataManagement::VulnerabilityState PpmHandler::currentVulnerabilityState(
return ts;
}
}
ts = ProjectDataManagement::VulnerabilityState::TemporarySeverance;
ts = ProjectDataManagement::VulnerabilityState::VulnerabilityState_TemporarySeverance;
return ts;
}
@@ -728,7 +728,7 @@ int PpmHandler::gearTypeIdFromChargeTypeId(int chargeTypeId)
rpr2::ForceIdentifierEnum8::ET PpmHandler::getRprForceIdentifierFromPpmForceIdentifier(const ParticipantManagement::HlaForceIdentifierEnum& ppmForceIdentifier) const
{
rpr2::ForceIdentifierEnum8::ET eqfi = rpr2::ForceIdentifierEnum8::Other;
switch (ppmForceIdentifier.underlying()) {
switch (ppmForceIdentifier) {
case ParticipantManagement::HlaForceIdentifierEnum::Friendly_1:
eqfi = rpr2::ForceIdentifierEnum8::Friendly;
break;
@@ -899,7 +899,7 @@ void PpmHandler::onParticipantHit(const GuezHitStruct &hitStruct)
TrainingAreaBase::EquipmentState es;
es.equipmentNumber(hitStruct.targetId);
es.originatorChargeTypeId(ct.id());
if (hitStruct.originatorType.underlying() == ProjectDataManagement::StateChangeOriginator::AreaEffectSimulation)
if (hitStruct.originatorType == ProjectDataManagement::StateChangeOriginator::StateChangeOriginator_AreaEffectSimulation)
{
int aesItemId = 0;
if (m_dtcAes->aesItemIdFromExternalId(hitStruct.originatorId, aesItemId) == AreaEffectSimulation::AesType::AtUnknown)
@@ -971,7 +971,7 @@ void PpmHandler::onEquipmentState(const TrainingAreaBase::EquipmentState &event)
bool PpmHandler::onExconEngagement(int eqNo, const ProjectDataManagement::VulnerabilityState &state)
{
if (state != ProjectDataManagement::VulnerabilityState::CombatReady)
if (state != ProjectDataManagement::VulnerabilityState::VulnerabilityState_CombatReady)
{
TrainingAreaBase::DemandVulnerabilityStateChangeRequest req;
req.equipmentNumbers().push_back(eqNo);
@@ -6,6 +6,7 @@
#include <QtCore/QSet>
#include <ParticipantManagement/ppm.hpp>
#include <ParticipantManagement/ppm_dtc.h>
#include <ParticipantManagement/ppm_ftc.h>
#include <ProjectDataManagement/pdm_dtc.h>
#include <AreaEffectSimulation/aes_dtc.h>
@@ -15,8 +15,7 @@ namespace HighLevelArchitecture {
SocketReader::SocketReader(QObject *parent) : QThread(parent)
, m_socket(new QTcpSocket(this))
, m_hlaRequestIdentifier(0)
.getNGLLogger("SocketReader")),
m_logger(NGL::NGLLoggerBootstrap::getNGLRootLogger()) {
, m_logger(NGL::NGLLoggerBootstrap::getNGLRootLogger()) {
}
bool SocketReader::init(const QString &host, quint16 port, int hlaRequestIdentifier)
@@ -2,6 +2,7 @@
#include "web_socket_handler.h"
#include <NGLLogger/NGLLoggerBootstrap.h>
#include <utility>
#include "main_handler.h"