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 2b957d1edb
commit 598fc2560e
1718 files changed
+126739 -18495

No files matched your search

@@ -121,14 +121,14 @@ int JsonDispatcher::getAssetId(const QString &saaName) const
for (const auto &currAsset : m_mainDispatcher->asmHandler()->getDtc()->assets())
{
if (currAsset.assetTypeId() != AssetManagement::AssetType::AdlerSAA)
if (currAsset.assetTypeId != AssetManagement::AssetType::AdlerSAA)
continue;
const auto &dbSaa = saaNameFromProps(currAsset.properties());
const auto &dbSaa = saaNameFromProps(currAsset.properties);
if (dbSaa.toLower() != saaName.toLower())
continue;
return currAsset.id();
return currAsset.id;
}
return -1;
}
@@ -436,10 +436,10 @@ void JsonDispatcher::onSAAStatus(const int wsId, const EXStatus &status)
QString JsonDispatcher::getParticipantInfoLink(const QString &verein, const int partyId, const bool isVerbund)
{
const ParticipantManagement::Participant &part = m_ppmHandler->findParticipantByInternalName(verein, partyId, isVerbund);
DEBUG_LOG(m_logger) << "ParticipantId=" << part.id();
DEBUG_LOG(m_logger) << "ParticipantId=" << part.id;
QString ppmlink = QString::fromUtf8(tr_lts("Notification","<a href='lts://ParticipantInfo/%1'>Show Participant Info</a><br />"))
.arg(part.id());
.arg(part.id);
return ppmlink;
@@ -481,7 +481,7 @@ void JsonDispatcher::onSAASQWS(const int wsId, const Waffensystemdaten &exSQWS)
const ParticipantManagement::Participant &part = m_ppmHandler->findParticipantByInternalName(exSQWS.einheit.verein, partyId, isVerbund);
m_ppmHandler->parseSQWS(exSQWS, wsId);
if (part.id() > 0)
if (part.id > 0)
{
sendParticipantInfoNotification(wsId, partyId, isVerbund, exSQWS.einheit);
return;
@@ -500,7 +500,7 @@ void JsonDispatcher::onSAASQFS(const int wsId, const Feuerstellungsdaten &exSQFS
m_ppmHandler->parseSQFS(exSQFS, wsId);
const ParticipantManagement::Participant &part = m_ppmHandler->findParticipantByInternalName(exSQFS.feuereinheit.verein, partyId, isVerbund);
if (part.id() > 0)
if (part.id > 0)
{
sendParticipantInfoNotification(wsId, partyId, isVerbund, exSQFS.feuereinheit);
return;
@@ -521,7 +521,7 @@ void JsonDispatcher::onSAASQLP(const int wsId, const Ladeplatzdaten &exSQLP)
m_ppmHandler->parseSQLP(exSQLP, wsId);
if (part.id() > 0)
if (part.id > 0)
{
sendParticipantInfoNotification(wsId, partyId, isVerbund, exSQLP.einheit);
return;
@@ -537,11 +537,11 @@ void JsonDispatcher::sendParticipantInfoNotification(const int wsId, const int p
QStringList args;
const ParticipantManagement::Participant &part = m_ppmHandler->findParticipantByInternalName(einheit.verein, partyId, isVerbund);
DEBUG_LOG(m_logger) << "sendParticipantInfoNotification ParticipantId=" << part.id();
DEBUG_LOG(m_logger) << "sendParticipantInfoNotification ParticipantId=" << part.id;
QString content = QString::fromUtf8(tr_lts("Notification","<a href='lts://ParticipantInfo/%1'>Show Participant Info</a><br /><B>Unit:</B> %2/%3/%4"));
args.append(QString::number(part.id()));
args.append(QString::number(part.id));
args.append(ortsIdMap.key(einheit.oi));
args.append(QString::number(einheit.r));
args.append(einheit.verein);
@@ -626,8 +626,8 @@ void JsonDispatcher::onSSAEXFIREHALT(const int wsId, const FeuerHaltDaten &feuer
DEBUG_LOG(m_logger) << "[EX-FH] data from SSA " << wsId << " : "
<< "verein: " << feuerhaltdaten.verein << " "
<< "kenner: " << feuerhaltdaten.kenner.underlying() << " "
<< "kategorie: " << feuerhaltdaten.kategorie.underlying() << " "
<< "kenner: " << feuerhaltdaten.kenner << " "
<< "kategorie: " << feuerhaltdaten.kategorie << " "
<< "feuerkampfReferenz: " << feuerhaltdaten.feuerkampfReferenz << " "
<< "zpNummer: " << feuerhaltdaten.zpNummer << " "
<< "koordinaten: "
@@ -642,17 +642,17 @@ void JsonDispatcher::onSSAEXFIREHALT(const int wsId, const FeuerHaltDaten &feuer
AreaEffectSimulation::EffectClusterFireHaltRequest req;
req.partyId(partyId);
req.fireHaltCategory(kategorie);
req.kenner(kenner);
req.longitude(feuerhaltdaten.koordinate.longitude);
req.latitude(feuerhaltdaten.koordinate.latitude);
req.radius(feuerhaltdaten.radius);
req.entladenSchuss(feuerhaltdaten.entladenSchuss);
req.partyId = partyId;
req.fireHaltCategory = kategorie;
req.kenner = kenner;
req.longitude = feuerhaltdaten.koordinate.longitude;
req.latitude = feuerhaltdaten.koordinate.latitude;
req.radius = feuerhaltdaten.radius;
req.entladenSchuss = feuerhaltdaten.entladenSchuss;
const bool bRet = m_mainDispatcher->aesHandler()->getFtc()->effectClusterFireHaltRequest(req);
if (bRet && kategorie == ProjectDataManagement::L22_FireHaltCategory::E && !feuerhaltdaten.entladenSchuss) //we can send the EXVollzugsmeldung immediatly
if (bRet && kategorie == ProjectDataManagement::L22_FireHaltCategory::L22_FireHaltCategory_E && !feuerhaltdaten.entladenSchuss) //we can send the EXVollzugsmeldung immediatly
{
Feuerkampfdaten fkd;
fkd.feuerkampfReferenz = feuerhaltdaten.feuerkampfReferenz;
@@ -770,27 +770,27 @@ QUrl JsonDispatcher::webSocketUrl() const { return QUrl(QStringLiteral("ws://127
void JsonDispatcher::onAdlerCalculateTrajectoryRequest(const rti::core::SampleIdentity &cookie, const AdlerCalculateTrajectoryRequest &request)
{
Core::FunctionReplyObject ret;
m_explosionIndex = request.explosionIndex();
m_explosionIndex = request.explosionIndex;
m_cookieCalculateTrajectoryAdler = cookie;
DEBUG_LOG(m_logger) << "Adler Plugin onSendCalculateTrajectoryAdlerRequest"
<< ", m_saaInterfaces.size=" << m_saaInterfaces.size();
int wsId = 0;
std::shared_ptr<SAAInterface> saaInterface = getSAAByParty(request.partyId());
std::shared_ptr<SAAInterface> saaInterface = getSAAByParty(request.partyId);
if (saaInterface)
wsId = saaInterface->getWsId();
if (wsId == 0)
{
DEBUG_LOG(m_logger) << " No wsId found wsId=" << wsId << " return";
ret.setId(request.explosionIndex());
ret.setId(request.explosionIndex);
m_ftsTab->adlerCalculateTrajectoryReply(cookie, ret);
return;
}
DEBUG_LOG(m_logger) << "Adler Plugin onSendCalculateTrajectoryAdlerRequest"
<< " connect to SAA and send data"
<< ", partyId :" << request.partyId() << ", wsId :" << wsId;
<< ", partyId :" << request.partyId << ", wsId :" << wsId;
ExFlugbahnberechnung exFlugbahnberechnung;
exFlugbahnberechnung.sender = QStringLiteral("EXCON@GUEZ.DE");
@@ -804,57 +804,57 @@ void JsonDispatcher::onAdlerCalculateTrajectoryRequest(const rti::core::SampleId
exFlugbahnberechnung.timestamp = QDateTime::currentDateTime().toString(Qt::DateFormat::ISODate);
exFlugbahnberechnung.version = QStringLiteral("0.0.5");
exFlugbahnberechnung.flugbahnberechnungDaten.standort.koordinate.latitude = request.positionLaunch().lat() * 180.0 / M_PI;
exFlugbahnberechnung.flugbahnberechnungDaten.standort.koordinate.longitude = request.positionLaunch().lon() * 180.0 / M_PI;
exFlugbahnberechnung.flugbahnberechnungDaten.standort.hoehe = request.positionLaunch().z();
exFlugbahnberechnung.flugbahnberechnungDaten.standort.koordinate.latitude = request.positionLaunch.lat * 180.0 / M_PI;
exFlugbahnberechnung.flugbahnberechnungDaten.standort.koordinate.longitude = request.positionLaunch.lon * 180.0 / M_PI;
exFlugbahnberechnung.flugbahnberechnungDaten.standort.hoehe = request.positionLaunch.z;
exFlugbahnberechnung.flugbahnberechnungDaten.zielkoordinate.koordinate.latitude = request.positionTarget().lat() * 180.0 / M_PI;
exFlugbahnberechnung.flugbahnberechnungDaten.zielkoordinate.koordinate.longitude = request.positionTarget().lon() * 180.0 / M_PI;
exFlugbahnberechnung.flugbahnberechnungDaten.zielkoordinate.hoehe = request.positionTarget().z();
exFlugbahnberechnung.flugbahnberechnungDaten.zielkoordinate.koordinate.latitude = request.positionTarget.lat * 180.0 / M_PI;
exFlugbahnberechnung.flugbahnberechnungDaten.zielkoordinate.koordinate.longitude = request.positionTarget.lon * 180.0 / M_PI;
exFlugbahnberechnung.flugbahnberechnungDaten.zielkoordinate.hoehe = request.positionTarget.z;
exFlugbahnberechnung.flugbahnberechnungDaten.waffensystem = ProjectDataManagement::L26_EffectingSystemType(request.weaponSystemType().underlying() + 1);
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 weaponSystemType " << request.weaponSystemType().underlying();
exFlugbahnberechnung.flugbahnberechnungDaten.waffensystem = static_cast<ProjectDataManagement::L26_EffectingSystemType>(static_cast<int>(request.weaponSystemType) + 1);
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 weaponSystemType " << request.weaponSystemType;
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 L26_EffectingSystemType " << exFlugbahnberechnung.flugbahnberechnungDaten.waffensystem;
exFlugbahnberechnung.flugbahnberechnungDaten.geschoss.geschosssorte
= m_mainDispatcher->pdmHandler()->getDtc()->adlerChargeTypeName(request.trajectory().chargeTypeId());
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 chargeTypeId " << request.trajectory().chargeTypeId();
= m_mainDispatcher->pdmHandler()->getDtc()->adlerChargeTypeName(request.trajectory.chargeTypeId);
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 chargeTypeId " << request.trajectory.chargeTypeId;
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 geschosssorte " << exFlugbahnberechnung.flugbahnberechnungDaten.geschoss.geschosssorte;
exFlugbahnberechnung.flugbahnberechnungDaten.geschoss.zuender = m_mainDispatcher->pdmHandler()->getDtc()->adlerIgniterTypeName(request.trajectory().igniterTypeId());
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 igniterTypeId " << request.trajectory().igniterTypeId();
exFlugbahnberechnung.flugbahnberechnungDaten.geschoss.zuender = m_mainDispatcher->pdmHandler()->getDtc()->adlerIgniterTypeName(request.trajectory.igniterTypeId);
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 igniterTypeId " << request.trajectory.igniterTypeId;
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 zuender " << exFlugbahnberechnung.flugbahnberechnungDaten.geschoss.zuender;
exFlugbahnberechnung.flugbahnberechnungDaten.geschoss.zuenderFunktion
= m_mainDispatcher->pdmHandler()->getDtc()->adlerIgniterFunctionName(request.trajectory().igniterFunctionId());
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 igniterFunctionId " << request.trajectory().igniterFunctionId();
= m_mainDispatcher->pdmHandler()->getDtc()->adlerIgniterFunctionName(request.trajectory.igniterFunctionId);
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 igniterFunctionId " << request.trajectory.igniterFunctionId;
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 zuenderFunktion " << exFlugbahnberechnung.flugbahnberechnungDaten.geschoss.zuenderFunktion;
if (request.trajectory().loadTypeId() > 0)
exFlugbahnberechnung.flugbahnberechnungDaten.geschoss.ladung = m_mainDispatcher->pdmHandler()->getDtc()->adlerLoadTypeName(request.trajectory().loadTypeId());
if (request.trajectory.loadTypeId > 0)
exFlugbahnberechnung.flugbahnberechnungDaten.geschoss.ladung = m_mainDispatcher->pdmHandler()->getDtc()->adlerLoadTypeName(request.trajectory.loadTypeId);
DEBUG_LOG(m_logger) << "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!77 ladung " << exFlugbahnberechnung.flugbahnberechnungDaten.geschoss.ladung;
exFlugbahnberechnung.flugbahnberechnungDaten.sprenghoehe = static_cast<int>(request.explosionHeight());
exFlugbahnberechnung.flugbahnberechnungDaten.winkelgruppe = AdlerJson::Winkelgruppe(request.angleGroup().underlying());
exFlugbahnberechnung.flugbahnberechnungDaten.sprenghoehe = static_cast<int>(request.explosionHeight);
exFlugbahnberechnung.flugbahnberechnungDaten.winkelgruppe = AdlerJson::Winkelgruppe(request.angleGroup);
//////////////////////////////////////////////////
/// Daten aus dem ESG-Simulator
if (request.properties().empty())
if (request.properties.empty())
ERROR_LOG(m_logger) << "No properties available";
DEBUG_LOG(m_logger) << ", request.aesItemId() :" << request.aesItemId();
DEBUG_LOG(m_logger) << ", request.aesItemId() :" << request.aesItemId;
//////////////////////////////////////////////////
DEBUG_LOG(m_logger) << "UUID=" << exFlugbahnberechnung.uuid;
TrajectoryIdentifier trajectoryIdentifier;
trajectoryIdentifier.aesItemId = request.aesItemId();
trajectoryIdentifier.explosionId = request.explosionIndex();
trajectoryIdentifier.aesItemId = request.aesItemId;
trajectoryIdentifier.explosionId = request.explosionIndex;
QString uuidCleaned = exFlugbahnberechnung.uuid.remove(QStringLiteral("-"));
m_trajectoryIdentifier.insert(uuidCleaned, trajectoryIdentifier);
m_positionsLaunch.insert(uuidCleaned, request.positionLaunch());
m_positionsLaunch.insert(uuidCleaned, request.positionLaunch);
QJsonObject telegram;
telegram = exFlugbahnberechnung.toJson();
@@ -896,7 +896,7 @@ void JsonDispatcher::getCreateNotificationRequestData(const int wsId,
const qint64 expiryTime = currentTime + 100 * 1000;
NotificationManagement::NomNotification notif;
notif.title(title.toStdString());
notif.title = title.toStdString();
const auto saa = getSAAByWs(wsId);
if (!saa)
@@ -907,25 +907,25 @@ void JsonDispatcher::getCreateNotificationRequestData(const int wsId,
//QString content = QStringLiteral("[Open Notification List ](//nomEditGuiPlugin/)") + QStringLiteral("<br />");
const int partyId = saa->getPartyId();
const ParticipantManagement::Party party = m_ppmHandler->getDtc()->party(partyId);
const QString partyStr = QString::fromStdString(party.name());
const QString partyStr = QString::fromStdString(party.name);
std::vector<std::string> args;
args.reserve(contentArgs.size());
for (const auto & str : std::as_const(contentArgs))
args.emplace_back(str.toStdString());
notif.content(content.toStdString());
notif.contentArgs(args);
notif.timeStamp(currentTime);
notif.expiryTime(expiryTime);
notif.priority(NotificationManagement::Priority::High);
notif.processedPriority(NotificationManagement::Priority::High);
notif.exerciseId(m_mainDispatcher->exerciseId());
notif.content = content.toStdString();
notif.contentArgs = args;
notif.timeStamp = currentTime;
notif.expiryTime = expiryTime;
notif.priority = NotificationManagement::Priority::High;
notif.processedPriority = NotificationManagement::Priority::High;
notif.exerciseId = m_mainDispatcher->exerciseId();
const QVector<int> recipientIds = m_mainDispatcher->ddsHandler()->dtcOpm()->getNotificationRecipents(m_mainDispatcher->exerciseId(),
partyId,
OperatorRights::AdlerExplosionClusterEdit,
data.notification().notificationType().underlying());
static_cast<int>(data.notification.notificationType));
DEBUG_LOG(m_logger) << "getCreateNotificationRequestData recipientIds.size=" << recipientIds.size()
<< ", exerciseId=" << m_mainDispatcher->exerciseId();
std::vector<NotificationManagement::Address> recipientIdsDds;
@@ -934,22 +934,22 @@ void JsonDispatcher::getCreateNotificationRequestData(const int wsId,
for (const auto &recipientId : std::as_const(recipientIds))
{
NotificationManagement::Address addr;
addr.addressId(recipientId);
addr.isRead(false);
addr.addressId = recipientId;
addr.isRead = false;
const OperatorManagement::User user = m_mainDispatcher->ddsHandler()->dtcOpm()->user(recipientId);
addr.name(user.name());
addr.addressType(NotificationManagement::AddressType::Operator);
notif.recipientIds().push_back(addr);
DEBUG_LOG(m_logger) << "recipientId=" << addr.name()
<< ", addr.addressId=" << addr.addressId();
addr.name = user.name;
addr.addressType = NotificationManagement::AddressType::Operator;
notif.recipientIds.push_back(addr);
DEBUG_LOG(m_logger) << "recipientId=" << addr.name
<< ", addr.addressId=" << addr.addressId;
}
NotificationManagement::Address addrSender;
addrSender.name(saa->getSAAName().toStdString());
addrSender.addressType(NotificationManagement::AddressType::Service);
notif.sender(addrSender);
addrSender.name = saa->getSAAName().toStdString();
addrSender.addressType = NotificationManagement::AddressType::Service;
notif.sender = addrSender;
data.notification(notif);
data.notification = notif;
} // end of getCreateNotificationRequestData()
void JsonDispatcher::createNotificationRequest(const int wsId,
@@ -963,16 +963,16 @@ void JsonDispatcher::createNotificationRequest(const int wsId,
<< ", content=" << content;
NotificationManagement::CreateNotification req;
getCreateNotificationRequestData(wsId, title, req, content, args);
if (req.notification().content().empty())
if (req.notification.content.empty())
{
INFO_LOG(m_logger) << "req.notification().content().empty()";
return;
}
req.notification().messageType(messageType);
req.notification().notificationType(notificationType);
req.notification.messageType = messageType;
req.notification.notificationType = notificationType;
INFO_LOG(m_logger) << "trying to send CreateNotificationRequest";
if (req.notification().recipientIds().size() == 0)
if (req.notification.recipientIds.size() == 0)
{
INFO_LOG(m_logger) << "req.notification().recipientIds().size() == 0";
return;