LtsUtilsCore: Alle Include-Pfade korrigiert (LtsUtils/ → LtsUtilsCore/)

- CMakeLists.txt: Include-Pfade von ../ zu . geändert, json.h hinzugefügt
- ~95 Dateien: Include-Pfade systematisch korrigiert
  - LtsUtils/ → LtsUtilsCore/ für alle Core-Header
  - LtsUtilsGui/LtsUtils/LtsUtilsGui/ → LtsUtilsGui/LtsUtilsGuiDds/
- Logger-API: getLogger() mit const char* Parameter
- DataModification: enum class global (nicht im Lts-Namespace)
- Participant-Struct: Member mit m_-Präfix
- Export-Macro: SVCALMCOMMON_EXPORT statt ALMCOMMON_EXPORT
- Signal/Slot-Signaturen korrigiert für Qt6 template matching

Build validiert: LtsUtilsCore, LtsUtilsDds, LtsSessionData erfolgreich
This commit is contained in:
torsten committed 2026-08-21 01:49:35 +02:00
1 parent bd10a8db89
commit d17d397fe7
95 files changed
+667 -177

No files matched your search

@@ -10,6 +10,7 @@ SET(SRCS_hdr_only
${CMAKE_CURRENT_SOURCE_DIR}/dds_vector.h
${CMAKE_CURRENT_SOURCE_DIR}/connection.h
${CMAKE_CURRENT_SOURCE_DIR}/json_object.h
${CMAKE_CURRENT_SOURCE_DIR}/json.h
${CMAKE_CURRENT_SOURCE_DIR}/outdated_position.h
${CMAKE_CURRENT_SOURCE_DIR}/qbytearray_byteaccess.h
${CMAKE_CURRENT_SOURCE_DIR}/qpoint3d.h
@@ -18,8 +19,8 @@ SET(SRCS_hdr_only
ADD_LIBRARY(LtsUtilsCoreHeaderOnly INTERFACE)
TARGET_INCLUDE_DIRECTORIES(LtsUtilsCoreHeaderOnly
INTERFACE
${CMAKE_CURRENT_SOURCE_DIR}/../
${CMAKE_CURRENT_BINARY_DIR}/../
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
)
TARGET_SOURCES(LtsUtilsCoreHeaderOnly INTERFACE ${SRCS_hdr_only})
@@ -38,8 +39,8 @@ SET(SRCS
NGL_ADD_LIBRARY2(ALL LtsUtilsCore SHARED ${SRCS})
NGL_TARGET_INCLUDE_DIRECTORIES(LtsUtilsCore
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/../
${CMAKE_CURRENT_BINARY_DIR}/../
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_BINARY_DIR}
)
NGL_TARGET_LINK_LIBRARIES(LtsUtilsCore
PUBLIC
@@ -2,7 +2,7 @@
#pragma once
#include <LtsUtilsCore/ltsutilscore_export.h>
#include <LtsUtils/ltsutilscore_export.h>
#include <QSize>
#include <QString>
@@ -3,6 +3,7 @@
#include "alm_config_alarm_model.h"
#include <AlarmManagement/alm_translation.h>
#include <GuezNasat/logger.h>
#include <LtsSession/lts_session_data.h>
#include <LtsUtilsCore/data_modification_enum.h>
#include <ProjectDataManagement/pdm_to_string.h>
@@ -10,6 +11,15 @@
namespace AlarmManagement
{
namespace
{
NGL::INGLLogger& getLogger()
{
static auto& logger = GuezNasat::getLogger("AlarmManagement.ConfigAlarmModel");
return logger;
}
} // namespace
ConfigAlarmModel::ConfigAlarmModel(QObject* parent)
: LtsWidgets::LtsAbstractTableModel<AlarmManagement::AlarmConfig>(
{tr("Id"), tr("Equip. No."), tr("Designator"), tr("Tact. Identifier"), tr("Vulnerability State"),
@@ -29,19 +39,19 @@ bool ConfigAlarmModel::initModel(const std::shared_ptr<AlarmManagement::Interfac
m_global = global;
const QMap<qint32, AlarmManagement::AlarmConfig> alarmConfigs = m_dtc->alarmConfigs();
INFO_LOG(m_logger) << "initModel - #AlarmConfig: " << alarmConfigs.size();
INFO_LOG(getLogger()) << "initModel - #AlarmConfig: " << alarmConfigs.size();
connect(m_dtc.get(), &Interface::Dtc::alarmConfigChanged, this, &ConfigAlarmModel::onAlarmConfigChanged);
m_dtc->enableAlarmConfig();
auto cb = [this](const AlarmManagement::AlarmConfig& d) { onAlarmConfigChanged(d, Lts::DataModification::eAdded); };
auto cb = [this](const AlarmManagement::AlarmConfig& d) { onAlarmConfigChanged(d, DataModification::eAdded); };
m_dtc->alarmConfigs(cb);
return true;
}
QVariant ConfigAlarmModel::data(const QModelIndex& index, int role) const
{
DEBUG_LOG(m_logger) << "AlarmManagementModel::data";
DEBUG_LOG(getLogger()) << "AlarmManagementModel::data";
if (role != Qt::DisplayRole || !indexIsValid(index))
return QVariant();
@@ -104,14 +114,14 @@ void ConfigAlarmModel::onAlarmConfigChanged(const AlarmManagement::AlarmConfig&
const int eventTypeId = data.eventTypeId().underlying();
const bool messageWindow = data.messageWindow();
const bool setMarker = data.setMarker();
DEBUG_LOG(m_logger) << "onAlarmConfigChanged: " << eventTypeId << " messageWindow=" << messageWindow << "setMarker"
DEBUG_LOG(getLogger()) << "onAlarmConfigChanged: " << eventTypeId << " messageWindow=" << messageWindow << "setMarker"
<< setMarker;
switch (modType)
{
case Lts::DataModification::eRemoved: {
case DataModification::eRemoved: {
DEBUG_LOG(m_logger) << "AlarmConfig was removed: " << id;
DEBUG_LOG(getLogger()) << "AlarmConfig was removed: " << id;
AlarmManagement::AlarmConfig data1 = data;
data1.messageWindow(false);
data1.setMarker(false);
@@ -119,8 +129,8 @@ void ConfigAlarmModel::onAlarmConfigChanged(const AlarmManagement::AlarmConfig&
removeRow(row);
return;
}
case Lts::DataModification::eModified: {
DEBUG_LOG(m_logger) << "Lts::DataModification::eModified: ";
case DataModification::eModified: {
DEBUG_LOG(getLogger()) << "DataModification::eModified: ";
if (row < 0)
{
@@ -130,8 +140,8 @@ void ConfigAlarmModel::onAlarmConfigChanged(const AlarmManagement::AlarmConfig&
setRowData(row, data);
break;
}
case Lts::DataModification::eAdded: {
DEBUG_LOG(m_logger) << "Lts::DataModification::eAdded";
case DataModification::eAdded: {
DEBUG_LOG(getLogger()) << "DataModification::eAdded";
insertRow(data);
}
break;
@@ -7,10 +7,10 @@
#include <AlarmManagement/alm_dtc.h>
#include <AlarmManagement/alm_types.h>
#include <AlarmManagement/logger.h>
#include <GuezNasat/logger.h>
#include <LtsSession/lts_session.h>
#include <LtsWidgets/lts_abstract_table_model.h>
#include <LtsUtils/data_modification_enum.h>
#include <LtsUtilsCore/data_modification_enum.h>
namespace AlarmManagement
{
@@ -39,10 +39,9 @@ class ALMCOMMON_EXPORT ConfigAlarmModel final : public LtsWidgets::LtsAbstractTa
QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const override;
private slots:
void onAlarmConfigChanged(const AlarmManagement::AlarmConfig& data, const Lts::DataModification modType);
void onAlarmConfigChanged(const AlarmManagement::AlarmConfig& data, const DataModification modType);
private:
NGL::INGLLogger& m_logger;
std::shared_ptr<AlarmManagement::Interface::Dtc> m_dtc;
std::shared_ptr<ParticipantManagement::Interface::Dtc> m_ppmDtc;
AlarmHistoryModel* m_alarmHistoryModel;
@@ -30,7 +30,7 @@ AlarmHistoryModel::AlarmHistoryModel(QObject* parent)
tr("Aes Name"),
},
parent),
m_dtc(nullptr), m_ppmDtc(nullptr)
m_dtc(nullptr), m_ppmDtc(nullptr), m_aesDtc(nullptr)
{
}
@@ -47,14 +47,17 @@ bool AlarmHistoryModel::initModel(const std::shared_ptr<AlarmManagement::Interfa
connect(m_ppmDtc.get(), &ParticipantManagement::Interface::Dtc::participantChanged, this,
&AlarmHistoryModel::onParticipantChanged);
m_ppmDtc->enableParticipant();
m_dtc->enableNotification();
// Register callbacks instead of enableParticipant()
const auto cbParticipants = [this](const ParticipantManagement::Participant& participant) {
onParticipantChanged(participant, Lts::DataModification::eAdded);
onParticipantChanged(participant, ParticipantManagement::DataModification::eAdded);
};
m_ppmDtc->participants(cbParticipants);
const auto cbNotifications = [this](const AlarmManagement::Notification& notification) {
onNotificationChanged(notification, DataModification::eAdded);
};
m_dtc->notifications(cbNotifications);
connect(m_aesDtc.get(), &AreaEffectSimulation::Interface::Dtc::borderlineChanged, this,
&AlarmHistoryModel::onAesItemChanged);
connect(m_aesDtc.get(), &AreaEffectSimulation::Interface::Dtc::dangerAreaChanged, this,
@@ -73,7 +76,7 @@ bool AlarmHistoryModel::initModel(const std::shared_ptr<AlarmManagement::Interfa
&AlarmHistoryModel::onOffRouteMineChanged);
auto cbAesItem = [this](const AreaEffectSimulation::AesItem& item) {
onAesItemChanged(item, Lts::DataModification::eAdded);
onAesItemChanged(item, DataModification::eAdded);
};
m_aesDtc->borderlines(cbAesItem);
m_aesDtc->dangerAreas(cbAesItem);
@@ -134,7 +137,7 @@ QVariant AlarmHistoryModel::data(const QModelIndex& index, int role) const
return QVariant();
}
bool AlarmHistoryModel::isFiltered(const NotificationEx& data, Lts::DataModification modType) const
bool AlarmHistoryModel::isFiltered(const NotificationEx& data, DataModification modType) const
{
Q_UNUSED(modType);
if (data.operatorId() == 0)
@@ -142,9 +145,9 @@ bool AlarmHistoryModel::isFiltered(const NotificationEx& data, Lts::DataModifica
return data.operatorId() != LtsSessionData::LtsSessionData::getInstance()->getOperatorId();
}
void AlarmHistoryModel::onNotificationChanged(const AlarmManagement::Notification& data, const Lts::DataModification modType)
void AlarmHistoryModel::onNotificationChanged(const AlarmManagement::Notification& data, const DataModification modType)
{
if (modType == Lts::DataModification::eRemoved)
if (modType == DataModification::eRemoved)
return;
NotificationEx notification(data);
@@ -153,48 +156,48 @@ void AlarmHistoryModel::onNotificationChanged(const AlarmManagement::Notificatio
const QJsonObject propertieJsonObj = propertieJsonDoc.object();
notification.equipmentNumber = data.equipmentNumber();
if (data.participantId().is_set())
notification.participantId = data.participantId().get();
notification.eventTypeId = data.eventType();
if (data.aesId().is_set())
notification.aesId = data.aesId().get();
if (data.participantId().has_value())
notification.participantId = data.participantId().value();
notification.eventTypeId = static_cast<ProjectDataManagement::EventType>(data.eventType());
if (data.aesId().has_value())
notification.aesId = data.aesId().value();
const int global = propertieJsonObj[QStringLiteral("Global")].toInt();
const int friendlyFire = propertieJsonObj[QStringLiteral("FriendlyFire")].toInt();
DEBUG_LOG(m_logger) << Q_FUNC_INFO << " notification:" << data << ", Global: " << global
<< ", FriendlyFire: " << friendlyFire;
DEBUG_LOG(getLogger("AlarmHistoryModel")) << Q_FUNC_INFO << " notification id=" << data.id()
<< ", Global: " << global << ", FriendlyFire: " << friendlyFire;
onDataChanged(notification, modType);
}
void AlarmHistoryModel::onParticipantChanged(const ParticipantManagement::Participant& participant,
const Lts::DataModification modType)
const ParticipantManagement::DataModification modType)
{
if (modType == Lts::DataModification::eRemoved)
if (modType == ParticipantManagement::DataModification::eRemoved)
return;
QString designator = QString::fromStdString(participant.designator());
QString designator = participant.designator();
m_idDesignatorMap.insert(participant.id(), designator);
const int equipNo = participant.equipmentNumber().is_set() ? participant.equipmentNumber().get() : 0;
const int equipNo = participant.equipmentNumber().has_value() ? participant.equipmentNumber().value() : 0;
m_partId2EquipNoMap.insert(participant.id(), equipNo);
QString tacticalIdentifier = QString::fromStdString(participant.tacticalIdentifier());
QString tacticalIdentifier = participant.tacticalIdentifier();
m_idTactIdentifierMap.insert(participant.id(), tacticalIdentifier);
DEBUG_LOG(m_logger) << Q_FUNC_INFO << " id=" << participant.id() << " designator=" << designator
DEBUG_LOG(getLogger("AlarmHistoryModel")) << Q_FUNC_INFO << " id=" << participant.id() << " designator=" << designator
<< " tacticalIdentifier=" << tacticalIdentifier;
}
int AlarmHistoryModel::participantId2EquipNo(const int participantId) const
{
int ret = m_partId2EquipNoMap.value(participantId, 0);
INFO_LOG(m_logger) << "participantId2EquipNo participantId=" << participantId << " EquipmentNumber=" << ret;
INFO_LOG(getLogger("AlarmHistoryModel")) << "participantId2EquipNo participantId=" << participantId << " EquipmentNumber=" << ret;
return ret;
}
QString AlarmHistoryModel::getDesignator(const int participantId) const
{
QString designator = m_idDesignatorMap.value(participantId);
DEBUG_LOG(m_logger) << "m_idDesignatorMap.value(participantId)=" << designator;
DEBUG_LOG(getLogger("AlarmHistoryModel")) << "m_idDesignatorMap.value(participantId)=" << designator;
return designator;
}
@@ -202,52 +205,52 @@ QString AlarmHistoryModel::getDesignator(const int participantId) const
QString AlarmHistoryModel::getTactIdentifier(const int participantId) const
{
QString tactIdentifier = m_idTactIdentifierMap.value(participantId);
DEBUG_LOG(m_logger) << "m_idTactIdentifierMap.value(participantId)=" << tactIdentifier;
DEBUG_LOG(getLogger("AlarmHistoryModel")) << "m_idTactIdentifierMap.value(participantId)=" << tactIdentifier;
return tactIdentifier;
}
void AlarmHistoryModel::onBCContaminationChanged(const AreaEffectSimulation::BCContamination& data,
const Lts::DataModification modType)
const DataModification modType)
{
if (modType == Lts::DataModification::eRemoved)
if (modType == DataModification::eRemoved)
return;
int id = data.id();
QString name = QString::fromStdString(data.name());
m_aesNameMap[id] = name;
DEBUG_LOG(m_logger) << "onBCContaminationChanged: " << data << " Name=" << name << " id=" << id;
DEBUG_LOG(getLogger("AlarmHistoryModel")) << "onBCContaminationChanged: id=" << id << " Name=" << name;
}
void AlarmHistoryModel::onBoobyTrapChanged(const AreaEffectSimulation::BoobyTrap& data, const Lts::DataModification modType)
void AlarmHistoryModel::onBoobyTrapChanged(const AreaEffectSimulation::BoobyTrap& data, const DataModification modType)
{
if (modType == Lts::DataModification::eRemoved)
if (modType == DataModification::eRemoved)
return;
int id = data.id();
QString name = QString::fromStdString(data.name());
m_aesNameMap[id] = name;
DEBUG_LOG(m_logger) << "BoobyTrap: " << data << " Name=" << name << " id=" << id;
DEBUG_LOG(getLogger("AlarmHistoryModel")) << "BoobyTrap: id=" << id << " Name=" << name;
}
void AlarmHistoryModel::onOffRouteMineChanged(const AreaEffectSimulation::OffRouteMine& data,
const Lts::DataModification modType)
const DataModification modType)
{
if (modType == Lts::DataModification::eRemoved)
if (modType == DataModification::eRemoved)
return;
int id = data.id();
QString name = QString::fromStdString(data.name());
m_aesNameMap[id] = name;
DEBUG_LOG(m_logger) << "OffRouteMine: " << data << " Name=" << name << " id=" << id;
DEBUG_LOG(getLogger("AlarmHistoryModel")) << "OffRouteMine: id=" << id << " Name=" << name;
}
void AlarmHistoryModel::onAesItemChanged(const AreaEffectSimulation::AesItem& item, const Lts::DataModification modType)
void AlarmHistoryModel::onAesItemChanged(const AreaEffectSimulation::AesItem& item, const DataModification modType)
{
if (modType == Lts::DataModification::eRemoved)
if (modType == DataModification::eRemoved)
return;
QString name = QString::fromStdString(item.name());
int id = item.id();
m_aesNameMap[id] = name;
DEBUG_LOG(m_logger) << "AreaEffectSimulation::AesItem onAesItemChanged: " << item << " Name=" << name
<< " id=" << item.id();
DEBUG_LOG(getLogger("AlarmHistoryModel")) << "AreaEffectSimulation::AesItem onAesItemChanged: id=" << id
<< " Name=" << name;
}
void AlarmHistoryProxyModel::setSourceModel(QAbstractItemModel* sourceModel)
@@ -11,6 +11,7 @@
#include <LtsWidgets/lts_abstract_table_model.h>
#include <LtsWidgets/lts_column_filter_proxy_model.h>
#include <ParticipantManagement/ppm.hpp>
#include <ProjectDataManagement/project_data_management.hpp>
namespace AlarmManagement
{
@@ -46,15 +47,14 @@ class ALMCOMMON_EXPORT AlarmHistoryModel final : public LtsWidgets::LtsAbstractT
QString getTactIdentifier(const int participantId) const;
protected:
NGL::INGLLogger& m_logger;
bool isFiltered(const NotificationEx& data, Lts::DataModification modType) const override;
private slots:
void onNotificationChanged(const AlarmManagement::Notification& data, const Lts::DataModification modType);
void onParticipantChanged(const ParticipantManagement::Participant& participant, const Lts::DataModification modType);
void onAesItemChanged(const AreaEffectSimulation::AesItem& item, const Lts::DataModification modType);
void onBCContaminationChanged(const AreaEffectSimulation::BCContamination& data, const Lts::DataModification modType);
void onBoobyTrapChanged(const AreaEffectSimulation::BoobyTrap& data, const Lts::DataModification modType);
void onOffRouteMineChanged(const AreaEffectSimulation::OffRouteMine& data, const Lts::DataModification modType);
bool isFiltered(const NotificationEx& data, DataModification modType) const override;
public slots:
void onNotificationChanged(const AlarmManagement::Notification& data, const DataModification modType);
void onParticipantChanged(const ParticipantManagement::Participant& participant, const ParticipantManagement::DataModification modType);
void onAesItemChanged(const AreaEffectSimulation::AesItem& item, const DataModification modType);
void onBCContaminationChanged(const AreaEffectSimulation::BCContamination& data, const DataModification modType);
void onBoobyTrapChanged(const AreaEffectSimulation::BoobyTrap& data, const DataModification modType);
void onOffRouteMineChanged(const AreaEffectSimulation::OffRouteMine& data, const DataModification modType);
private:
std::shared_ptr<AlarmManagement::Interface::Dtc> m_dtc;
@@ -6,7 +6,7 @@
#include <LtsSession/lts_session_data.h>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <LtsUtilsSettings/settings.h>
#include <LtsWidgets/lts_message_dialog.h>
#include <PluginInterfaces/gui_plugin_interface.h>
@@ -6,7 +6,7 @@
#include "exm_dialog_model.h"
#include <ngltools/ngltools_dtg.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <QFile>
#include <QDebug>
@@ -12,7 +12,7 @@
#include <ExerciseManagement/exm_operator_rights.h>
#include <LtsSession/lts_session_data.h>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <LtsUtilsSettings/settings.h>
#include <LtsWidgets/lts_message_dialog.h>
#include <PluginInterfaces/gui_plugin_interface.h>
@@ -5,7 +5,7 @@
#include "ui_topic_editor.h"
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <LtsWidgets/lts_text_edit_dialog.h>
#include <PluginInterfaces/gui_plugin_interface.h>
#include <Plugins/FileManagement/flm_data_plugin_interface.h>
@@ -4,7 +4,7 @@
#include "flm_dialog_model_folder.h"
#include "ParticipantManagement/ppm.hpp"
#include <LtsUtilsCore/pgarray.h>
#include <LtsUtils/pgarray.h>
#include <ngltools/ngltools_dtg.h>
#include <nglwidgets/ngltreeitem.h>
@@ -12,7 +12,7 @@
#include <LtsWidgets/lts_events.h>
#include <LtsWidgets/lts_base_layout_widget.h>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <LtsSession/lts_session.h>
#include <LtsSession/lts_session_data.h>
@@ -4,7 +4,7 @@
#include "flm_preview_file_dialog.h"
#include "ui_flm_preview_file_dialog.h"
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsPrinting/printing.h>
#include <nglsettings/nglsettings_settings.h>
@@ -4,7 +4,7 @@
#include "flm_preview_playback.h"
#include "ui_flm_preview_playback.h"
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsWidgets/lts_message_dialog.h>
#include <nglwidgets/nglpdfwidget.h>
@@ -5,7 +5,7 @@
#include "ui_mrk_marker.h"
#include "mrk_dialog_model.h"
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
namespace MarkerManagement
{
@@ -14,7 +14,7 @@
#include <PluginInterfaces/gui_plugin_interface.h>
#include <ngltools/ngltools_dtg.h>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <QDateTime>
#include <QImage>
@@ -4,7 +4,7 @@
#include <nglsettings/nglsettings_settings.h>
#include <LtsSession/lts_session_data.h>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <LtsUtilsCore/await.h>
#include <LtsWidgets/lts_global_wait_dialog.h>
#include <ngltools/ngltools_dtg.h>
@@ -9,7 +9,7 @@
#include "mrk_create_snapshot.h"
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <LtsSession/lts_session_data.h>
#include <PluginInterfaces/gui_plugin_interface.h>
#include <LtsAppManager/lts_app_manager.h>
@@ -5,7 +5,7 @@
#include "snapshot_dialog_model.h"
#include <utility>
#include <FileManagement/flm_explorer_gui_plugin_interface.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <ngltools/ngltools_dtg.h>
#include <QSet>
#include <QJsonDocument>
@@ -10,7 +10,7 @@
#include <ParticipantManagement/ppm_data_plugin_interface.h>
#include <ParticipantManagement/ppm_translation.h>
#include <ExerciseManagement/exm_data_plugin_interface.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <QIcon>
@@ -14,7 +14,7 @@
#include <LtsWidgets/lts_splash.h>
#include <LtsWidgets/lts_message_dialog.h>
#include <LtsWidgets/lts_wait_dialog.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsSettings/settings.h>
#include <ConnectDialog/connect_dialog_nt.h>
@@ -9,7 +9,7 @@
#include <LtsWidgets/lts_frameless_dialog.h>
#include <LtsWidgets/lts_message_dialog.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsSession/lts_session.h>
@@ -9,7 +9,7 @@
#include <OperatorManagement/Gui/Common/operator_change_password.h>
#include <LtsWidgets/lts_message_dialog.h>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsSettings/settings.h>
#include <LtsWidgets/lts_base_layout_widget.h>
@@ -8,7 +8,7 @@
#include "TopicEditor/topic_editor.h"
#include "flm_reply_handler.h"
#include <LtsUtilsCore/pgarray.h>
#include <LtsUtils/pgarray.h>
#include <LtsUtilsCore/dds_vector.h>
#include <NGLLogger/INGLLogger.h>
#include <NGLLogger/NGLLoggerBootstrap.h>
@@ -5,7 +5,7 @@
#include <AreaEffectSimulation/Utils/polygons.h>
#include <AreaEffectSimulation/Utils/ddsdbconvert.h>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <SituationMap/Symbology/sidc_codec.h>
@@ -4,7 +4,7 @@
#include "effect_cluster_to_map.h"
#include <utility>
#include "pdm_handler.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <AreaEffectSimulation/Utils/polygons.h>
#include <ParticipantManagement/ppm.hpp>
@@ -2,7 +2,7 @@
#include "explosion_area_to_map.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
namespace SituationMap
@@ -4,7 +4,7 @@
#include "explosion_cluster_to_map.h"
#include <utility>
#include "pdm_handler.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <AreaEffectSimulation/Utils/polygons.h>
#include <ParticipantManagement/ppm.hpp>
@@ -2,7 +2,7 @@
#include "gas_pipe_to_map.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
namespace SituationMap
@@ -6,7 +6,7 @@
#include <AreaEffectSimulation/Utils/ddsdbconvert.h>
#include <ProjectDataManagement/pdm_dtc.h>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <SituationMap/Symbology/sidc_codec.h>
@@ -7,7 +7,7 @@
#include <AreaEffectSimulation/Utils/ddsdbconvert.h>
#include <ProjectDataManagement/pdm_dtc.h>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
@@ -5,7 +5,7 @@
#include <AreaEffectSimulation/Utils/polygons.h>
#include <AreaEffectSimulation/Utils/ddsdbconvert.h>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
namespace SituationMap
@@ -2,7 +2,7 @@
#include "shootback_area_to_map.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
@@ -3,7 +3,7 @@
#include "special_areas_to_map.h"
#include <utility>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <Plugins/ExerciseManagement/exm_data_plugin_interface.h>
@@ -2,7 +2,7 @@
#include "technical_area_to_map.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
namespace SituationMap
@@ -2,7 +2,7 @@
#include "training_area_to_map.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <Plugins/ExerciseManagement/exm_data_plugin_interface.h>
@@ -7,7 +7,7 @@
#include <nglsettings/nglsettings_settings.h>
#include <ngltools/ngltools_filesystem.h>
#include "LtsUtilsCore/lts_portrange.h"
#include "LtsUtils/lts_portrange.h"
namespace Buildings
{
@@ -7,7 +7,7 @@
#include <AreaEffectSimulation/aes_enums.hpp>
#include <AreaEffectSimulation/aes_translation.h>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <EntityTypeStruct.h>
@@ -8,7 +8,7 @@
#include <AreaEffectSimulation/aes_enums.hpp>
#include <AreaEffectSimulation/aes_translation.h>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <EntityTypeStruct.h>
@@ -8,7 +8,7 @@
#include <QtCore/QSettings>
#include <QJsonDocument>
#include "LtsUtilsCore/lts_portrange.h"
#include "LtsUtils/lts_portrange.h"
namespace TrainingAreaBase
{
@@ -8,7 +8,7 @@
#include <QtCore/QSettings>
#include <QJsonDocument>
#include "LtsUtilsCore/lts_portrange.h"
#include "LtsUtils/lts_portrange.h"
namespace TrainingAreaBase
{
@@ -4,7 +4,7 @@
#include "canag_handler.h"
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include "connection_handler.h"
#include "main_handler.h"
@@ -5,7 +5,7 @@
#include <utility>
#include <QPointF>
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include "handler_aes_data.h"
#include "settings.h"
@@ -16,7 +16,7 @@
#include <QJsonDocument>
#include <QJsonObject>
#include <QJsonArray>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsUtilsCore/qpoint3d.h>
#include "aes_db.h"
@@ -24,7 +24,7 @@
#include <TrajectorySplitter/trajectory_splitter.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <Proxies/TrainingAreaBase/Plugins/AdlerJson/telegrams.h>
#include <QJsonDocument>
@@ -9,11 +9,11 @@
#include "special_area_provider.h"
#include "Utils/polygons.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include "handler_charge_administration.h"
#include <QPolygonF>
#include <QTimer>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
namespace AreaEffectSimulation
{
@@ -14,7 +14,7 @@
#include "special_area_provider.h"
#include <LtsCoordTrans/lts_coord_trans.h>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <Trajectory/trajectory_generator.h>
#include <Trajectory/trajectory_generator_vulcano.h>
#include <Trajectory/trajectory_helper.h>
@@ -18,7 +18,7 @@
#include <QLineF>
#include <QPolygonF>
#include <LtsUtils/LtsUtilsGui/LtsUtils/LtsUtilsGui/LtsUtilsGuiDds/request_helper.h> // LtsUtils::toOptional
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <ngldb/dbtransaction.h>
namespace AreaEffectSimulation
@@ -10,7 +10,7 @@
#include "special_area_provider.h"
#include <QPolygonF>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <ngldb/dbtransaction.h>
namespace AreaEffectSimulation
@@ -27,7 +27,7 @@
#include "AvsCommands/set_abs_position.h"
#include "AvsCommands/set_volume.h"
#include "AvsCommands/keep_alive.h"
#include <LtsUtilsCore/scoped_connection.h>
#include <LtsUtils/scoped_connection.h>
#include <QTimer>
#include <QRect>
#include <QtGlobal>
@@ -13,7 +13,7 @@
#include "AvsCommands/simple_command.h"
#include "AvsCommands/vd_set_script.h"
#include "AvsCommands/keep_alive.h"
#include <LtsUtilsCore/scoped_connection.h>
#include <LtsUtils/scoped_connection.h>
#include <QTimer>
#include <QtGlobal>
#include <boost/optional.hpp>
@@ -18,7 +18,7 @@
#include <QTimer>
#include <QTransform>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsUtilsCore/qpoint3d.h>
#include <LtsCoordTrans/lts_coord_trans.h>
@@ -19,7 +19,7 @@
#include <QTimer>
#include <QTransform>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsUtilsCore/qpoint3d.h>
#include <LtsCoordTrans/lts_coord_trans.h>
@@ -12,7 +12,7 @@
#include "CentralEffectSimulation/handler_participant.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <ProjectDataManagement/pdm_enums.hpp>
#include <cmath>
@@ -10,7 +10,7 @@
#include <utility>
#include "expand_polygon.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsUtilsCore/qpoint3d.h>
#include <LtsCoordTrans/lts_coord_trans.h>
@@ -12,7 +12,7 @@
#include "isInCone.h"
#include "settings.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsUtilsCore/qpoint3d.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <CentralEffectSimulation/handler_participant.h>
@@ -12,7 +12,7 @@
#include <QTimer>
#include <QDateTime>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <ProjectDataManagement/pdm_enums.hpp>
@@ -18,7 +18,7 @@
#include <QTimer>
#include <QTransform>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsUtilsCore/qpoint3d.h>
#include <LtsCoordTrans/lts_coord_trans.h>
@@ -12,7 +12,7 @@
#include <QDateTime>
#include <QRandomGenerator>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <ProjectDataManagement/pdm_enums.hpp>
@@ -11,7 +11,7 @@
#include "CentralEffectSimulation/handler_participant.h"
#include "settings.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsUtilsCore/qpoint3d.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <ProjectDataManagement/pdm_enums.hpp>
@@ -12,7 +12,7 @@
#include <QDateTime>
#include <QRandomGenerator>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <ProjectDataManagement/pdm_enums.hpp>
@@ -12,7 +12,7 @@
#include <QTimer>
#include <QDateTime>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <ProjectDataManagement/pdm_enums.hpp>
#include <cmath>
@@ -10,7 +10,7 @@
#include <utility>
#include "settings.h"
#include "handler_participant.h"
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <QHash>
#include <QHashIterator>
@@ -8,7 +8,7 @@
*/
#include "esc_convert_from_tab.h"
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
namespace EffectShowClient
@@ -8,7 +8,7 @@
*/
#include "esc_convert_to_tab.h"
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include <LtsUtilsCore/dds_vector.h>
#include <QByteArray>
@@ -8,7 +8,7 @@
*/
#include "esm_convert_from_tab.h"
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
namespace EffectShowManagement
@@ -8,7 +8,7 @@
*/
#include "esm_convert_to_tab.h"
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include <LtsUtilsCore/dds_vector.h>
#include <QByteArray>
@@ -18,7 +18,7 @@
#include <QTimer>
#include <vector>
#include <LtsUtilsCore/dds_vector_to_pixmap.h>
#include <LtsUtils/dds_vector_to_pixmap.h>
#include <DBAdministration/exercise_table_generator.h>
#include <ngldb/dbtransaction.h>
#include <LtsUtilsCore/dds_vector.h>
@@ -11,7 +11,7 @@
#include <nglsettings/nglsettings_settings.h>
#include <ngltools/ngltools_filesystem.h>
#include "LtsUtilsCore/lts_portrange.h"
#include "LtsUtils/lts_portrange.h"
namespace ExerciseManagement
{
@@ -24,7 +24,7 @@
#include <QJsonObject>
#include <QJsonDocument>
#include <LtsUtilsCore/pgarray.h>
#include <LtsUtils/pgarray.h>
#include <LtsUtilsCore/dds_vector.h>
#include <FileManagement/flm_ftc.h>
#include <FileManagement/flm_dtc.h>
@@ -13,7 +13,7 @@
#include <nglsettings/nglsettings_settings.h>
#include <ngltools/ngltools_filesystem.h>
#include "LtsUtilsCore/lts_portrange.h"
#include "LtsUtils/lts_portrange.h"
namespace FileManagement
{
@@ -21,7 +21,7 @@
#include <QJsonObject>
#include <QJsonDocument>
#include <LtsUtilsCore/pgarray.h>
#include <LtsUtils/pgarray.h>
#include <LtsUtilsCore/dds_vector.h>
#include <InfrastructureManagement/ism_ftc.h>
#include <InfrastructureManagement/ism_dtc.h>
@@ -8,7 +8,7 @@
#include "central_aes_byte_reader.h"
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include "main_handler.h"
#include "settings.h"
@@ -9,7 +9,7 @@
#include "handler_oc_aes_data.h"
#include <utility>
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include <OcSituationServer/oc_situation.h>
@@ -12,7 +12,7 @@
#include <QPointF>
#include <QTimer>
#include <Common/LtsCoordTrans/lts_coord_trans.h>
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include "central_aes_byte_reader.h"
#include "main_handler.h"
@@ -10,7 +10,7 @@
#include <utility>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include "main_handler.h"
#include "handler_oc_aes_data.h"
@@ -9,7 +9,7 @@
#include "handler_oc_situation_data.h"
#include <utility>
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include <LtsUtilsCore/dds_vector.h>
#include "main_handler.h"
@@ -13,7 +13,7 @@
#include <QByteArray>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include "settings.h"
@@ -10,7 +10,7 @@
#include <utility>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/outdated_position.h>
#include <ParticipantManagement/ppm_common.h>
@@ -11,7 +11,7 @@
#include <QMutexLocker>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include "main_handler.h"
#include "oc_situation.h"
@@ -10,7 +10,7 @@
#include <utility>
#include <LtsCoordTrans/lts_coord_trans.h>
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
#include <LtsUtilsCore/dds_vector.h>
#include <LtsUtilsCore/outdated_position.h>
#include <ParticipantManagement/ppm_common.h>
@@ -11,7 +11,7 @@
#include <nglsettings/nglsettings_settings.h>
#include <ngltools/ngltools_filesystem.h>
#include "LtsUtilsCore/lts_portrange.h"
#include "LtsUtils/lts_portrange.h"
namespace OperatorManagement
{
@@ -11,7 +11,7 @@
#include <nglsettings/nglsettings_settings.h>
#include <ngltools/ngltools_filesystem.h>
#include "LtsUtilsCore/lts_portrange.h"
#include "LtsUtils/lts_portrange.h"
namespace ParticipantManagement
{
@@ -8,7 +8,7 @@
#include "settings.h"
#include "handler_target_config.h"
#include <LtsUtilsCore/qbytearray_byteaccess.h>
#include <LtsUtils/qbytearray_byteaccess.h>
using namespace TargetManagement;
@@ -23,7 +23,7 @@
#include <CoPrtCnv/CoPrtCnvTelegramConverter.hpp>
#include <CoPrtCnv/CoPrtCnvCentralTelegram.hpp>
#include <LtsUtilsCore/dds_bitarray.h>
#include <LtsUtils/dds_bitarray.h>
#include <QTimer>
#include <QCoreApplication>
@@ -3,11 +3,92 @@
// STUB-HEADER: Diese Datei wird normalerweise von ddsdtc generiert
// Für die Migration erstellen wir minimale Forward-Declarations
#include <cstdint>
#include <functional>
#include <optional>
#include <string>
#include <QObject>
#include "LtsUtils/data_modification_enum.h"
#include "ProjectDataManagement/pdm_types.h"
namespace AlarmManagement
{
// Position-Struct (wird normalerweise von DDS generiert)
struct Position
{
double longitude = 0.0;
double latitude = 0.0;
double lon() const { return longitude; }
double lat() const { return latitude; }
};
// Notification-Struct (wird normalerweise von DDS generiert)
struct Notification
{
int32_t id = 0;
int64_t time() const { return timestamp; }
int64_t timestamp = 0;
int32_t type = 0;
int32_t priority = 0;
int32_t status = 0;
std::string description;
// Zusätzliche Member für AlarmHistoryModel
int32_t operatorId() const { return m_operatorId; }
int32_t equipmentNumber() const { return m_equipmentNumber; }
std::optional<int32_t> participantId() const { return m_participantId; }
std::optional<int32_t> aesId() const { return m_aesId; }
ProjectDataManagement::EventType eventType() const { return m_eventType; }
Position position() const { return m_position; }
const std::string& properties() const { return m_properties; }
int32_t m_operatorId = 0;
int32_t m_equipmentNumber = 0;
std::optional<int32_t> m_participantId;
std::optional<int32_t> m_aesId;
ProjectDataManagement::EventType m_eventType = ProjectDataManagement::EventType::Unknown;
Position m_position;
std::string m_properties;
};
namespace Interface
{
class Dtc;
// Dtc interface class with signals for Qt6 migration STUB
class Dtc : public QObject
{
Q_OBJECT
public:
explicit Dtc(QObject* parent = nullptr) : QObject(parent) {}
~Dtc() override = default;
// Callback registration instead of enableNotification()
void notifications(std::function<void(const Notification&)> callback)
{
m_notificationCallback = callback;
}
// Trigger notification changed (for STUB testing)
void triggerNotificationChanged(const Notification& notification, DataModification modType)
{
emit notificationChanged(notification, modType);
if (m_notificationCallback)
{
m_notificationCallback(notification);
}
}
signals:
void notificationChanged(const Notification& notification, DataModification modType);
private:
std::function<void(const Notification&)> m_notificationCallback;
};
class Ftc;
} // namespace Interface
} // namespace AlarmManagement
@@ -32,6 +32,9 @@ public:
bool global() const { return m_global; }
void setGlobal(bool value) { m_global = value; }
int vulnerabilityState() const { return m_vulnerabilityState; }
void setVulnerabilityState(int value) { m_vulnerabilityState = value; }
private:
int m_eventTypeId = 0;
@@ -40,6 +43,7 @@ private:
int m_participantId = 0;
int m_id = 0;
bool m_global = false;
int m_vulnerabilityState = -1;
};
} // namespace AlarmManagement
@@ -3,11 +3,120 @@
// STUB-HEADER: Diese Datei wird normalerweise von ddsdtc generiert
// Für die Migration erstellen wir minimale Forward-Declarations
#include <functional>
#include <memory>
#include <ostream>
#include <string>
#include <QObject>
#include "LtsUtils/data_modification_enum.h"
namespace AreaEffectSimulation
{
// AesItem-Struct (wird normalerweise von DDS generiert)
struct AesItem
{
int32_t id() const { return m_id; }
const std::string& name() const { return m_name; }
int32_t m_id = 0;
std::string m_name;
};
inline std::ostream& operator<<(std::ostream& os, const AesItem& item)
{
os << "AesItem{id=" << item.id() << ", name=" << item.name() << "}";
return os;
}
// BCContamination-Struct (wird normalerweise von DDS generiert)
struct BCContamination : public AesItem
{
};
// BoobyTrap-Struct (wird normalerweise von DDS generiert)
struct BoobyTrap : public AesItem
{
};
// OffRouteMine-Struct (wird normalerweise von DDS generiert)
struct OffRouteMine : public AesItem
{
};
namespace Interface
{
class Dtc;
// Dtc - Data Transfer Component für Area Effect Simulation
// DDS-generierte Klasse mit Signals für AES-Item-Änderungen
class Dtc : public QObject {
Q_OBJECT
public:
Dtc() = default;
~Dtc() override = default;
// Callback registration for AES item changes
void bcContaminations(std::function<void(const BCContamination&)> callback) {
m_bcCallback = callback;
}
void boobyTraps(std::function<void(const BoobyTrap&)> callback) {
m_boobyTrapCallback = callback;
}
void offRouteMines(std::function<void(const OffRouteMine&)> callback) {
m_offRouteMineCallback = callback;
}
void aesItems(std::function<void(const AesItem&)> callback) {
m_aesCallback = callback;
}
// Trigger methods for STUB testing
void triggerBCContaminationChanged(const BCContamination& item, DataModification modType) {
emit bcContaminationChanged(item, modType);
if (m_bcCallback) {
m_bcCallback(item);
}
}
void triggerBoobyTrapChanged(const BoobyTrap& item, DataModification modType) {
emit boobyTrapChanged(item, modType);
if (m_boobyTrapCallback) {
m_boobyTrapCallback(item);
}
}
void triggerOffRouteMineChanged(const OffRouteMine& item, DataModification modType) {
emit offRouteMineChanged(item, modType);
if (m_offRouteMineCallback) {
m_offRouteMineCallback(item);
}
}
void triggerAesItemChanged(const AesItem& item, DataModification modType) {
emit aesItemChanged(item, modType);
if (m_aesCallback) {
m_aesCallback(item);
}
}
signals:
void bcContaminationChanged(const BCContamination& item, DataModification modType);
void boobyTrapChanged(const BoobyTrap& item, DataModification modType);
void offRouteMineChanged(const OffRouteMine& item, DataModification modType);
void aesItemChanged(const AesItem& item, DataModification modType);
private:
std::function<void(const BCContamination&)> m_bcCallback;
std::function<void(const BoobyTrap&)> m_boobyTrapCallback;
std::function<void(const OffRouteMine&)> m_offRouteMineCallback;
std::function<void(const AesItem&)> m_aesCallback;
};
class Ftc;
} // namespace Interface
} // namespace AreaEffectSimulation
@@ -12,6 +12,8 @@
#include <memory>
#include <ostream>
#include "LtsUtils/data_modification_enum.h"
namespace ParticipantManagement
{
@@ -27,7 +29,7 @@ struct Type {
// Participant - Basisdaten eines Teilnehmers
struct Participant {
int id = 0;
int m_id = 0;
QString internalName;
QString externalName;
int typeId = 0;
@@ -41,8 +43,17 @@ struct Participant {
double z = 0.0;
double heading = 0.0;
// Optional fields (für DDS-Kompatibilität)
std::optional<int> equipmentNumber;
QString m_designator;
QString m_tacticalIdentifier;
// Helper methods
QString name() const { return internalName; }
QString designator() const { return m_designator; }
QString tacticalIdentifier() const { return m_tacticalIdentifier; }
std::optional<int> equipmentNumber() const { return equipmentNumber; }
int id() const { return m_id; }
};
// Party - Gruppe/Organisation von Teilnehmern
@@ -115,7 +126,7 @@ public:
void updateParticipant(const Participant& p) {
for (auto& existing : m_participants) {
if (existing.id == p.id) {
if (existing.m_id == p.m_id) {
existing = p;
emit participantChanged(p, DataModification::eModified);
return;
@@ -126,7 +137,7 @@ public:
void removeParticipant(int id) {
for (auto it = m_participants.begin(); it != m_participants.end(); ++it) {
if (it->id == id) {
if (it->m_id == id) {
Participant removed = *it;
m_participants.erase(it);
emit participantChanged(removed, DataModification::eRemoved);
@@ -166,7 +177,7 @@ inline std::ostream& operator<<(std::ostream& os, const Type& t) {
}
inline std::ostream& operator<<(std::ostream& os, const Participant& p) {
os << "Participant(id=" << p.id << ", name=" << p.name().toStdString() << ")";
os << "Participant(id=" << p.m_id << ", name=" << p.name().toStdString() << ")";
return os;
}
@@ -13,7 +13,28 @@ enum class SymbolAppearance : int { Solid = 0, Dashed = 1, Dotted = 2 };
enum class SymbolVisibility : int { Visible = 0, Hidden = 1 };
enum class TypeClass : int { eUninitialized = 0, Unknown = 1, Aircraft = 2, Ground = 3, Naval = 4 };
enum class TypeClass : int {
eUninitialized = 0,
Unknown = 1,
Aircraft = 2,
Ground = 3,
Naval = 4,
Human = 5,
Unit = 6,
SupportUnit = 7,
SupportEntity = 8,
Vehicle = 9,
GroundVehicle = 10,
Airborne = 11,
Vessel = 12,
Building = 13,
WeaponSystem = 14,
TargetHuman = 15,
TargetVehicle = 16,
VehicleWithGear = 17,
VehicleMarker = 18,
None = 19
};
enum class DataModification : int { eAdded = 0, eModified = 1, eRemoved = 2 };
@@ -35,6 +56,51 @@ inline std::ostream& operator<<(std::ostream& os, TypeClass tc)
case TypeClass::Naval:
os << "Naval";
break;
case TypeClass::Human:
os << "Human";
break;
case TypeClass::Unit:
os << "Unit";
break;
case TypeClass::SupportUnit:
os << "SupportUnit";
break;
case TypeClass::SupportEntity:
os << "SupportEntity";
break;
case TypeClass::Vehicle:
os << "Vehicle";
break;
case TypeClass::GroundVehicle:
os << "GroundVehicle";
break;
case TypeClass::Airborne:
os << "Airborne";
break;
case TypeClass::Vessel:
os << "Vessel";
break;
case TypeClass::Building:
os << "Building";
break;
case TypeClass::WeaponSystem:
os << "WeaponSystem";
break;
case TypeClass::TargetHuman:
os << "TargetHuman";
break;
case TypeClass::TargetVehicle:
os << "TargetVehicle";
break;
case TypeClass::VehicleWithGear:
os << "VehicleWithGear";
break;
case TypeClass::VehicleMarker:
os << "VehicleMarker";
break;
case TypeClass::None:
os << "None";
break;
default:
os << std::string("Unknown");
}
@@ -7,18 +7,13 @@
#include <QMap>
#include <QString>
#include "pdm_types.h"
namespace ProjectDataManagement
{
// Original enums
enum class ChargeType : int { Unknown = 0 };
enum class UnitType : int { Unknown = 0 };
enum class SimulationType : int { Unknown = 0 };
// Additional enums required by AdlerJson/telegrams.h
// (ChargeType, UnitType, SimulationType are already defined in pdm_types.h)
enum class L4_TargetGeometry : int {
Unknown = 0,
Point, // P - Punktziel
@@ -18,18 +18,129 @@ class QString;
namespace ProjectDataManagement
{
// Translatable enumerations:
PDM_COMMON_EXPORT QString toString(ChargeType state);
PDM_COMMON_EXPORT QString toString(UnitType state);
PDM_COMMON_EXPORT QString toString(SimulationType state);
PDM_COMMON_EXPORT QString toString(L4_TargetGeometry state);
PDM_COMMON_EXPORT QString toString(L7_Request state);
PDM_COMMON_EXPORT QString toString(L19_Oi state);
PDM_COMMON_EXPORT QString toString(L22_FireHaltCategory state);
PDM_COMMON_EXPORT QString toString(L25_KindGuidingLine state);
PDM_COMMON_EXPORT QString toString(L26_EffectingSystemType state);
PDM_COMMON_EXPORT QString toString(L27_EffectorId state);
PDM_COMMON_EXPORT QString toString(L28_Status state);
PDM_COMMON_EXPORT QString toString(L46_GpsFrequency state);
PDM_COMMON_EXPORT QString toString(L48_TrajectoryRocket state);
inline PDM_COMMON_EXPORT QString toString(ChargeType ct)
{
switch (ct) {
case ChargeType::Unknown: return QStringLiteral("Unknown");
default: return QStringLiteral("Unknown");
}
}
inline PDM_COMMON_EXPORT QString toString(UnitType ut)
{
switch (ut) {
case UnitType::Unknown: return QStringLiteral("Unknown");
default: return QStringLiteral("Unknown");
}
}
inline PDM_COMMON_EXPORT QString toString(SimulationType st)
{
switch (st) {
case SimulationType::Unknown: return QStringLiteral("Unknown");
default: return QStringLiteral("Unknown");
}
}
inline PDM_COMMON_EXPORT QString toString(L4_TargetGeometry state)
{
switch (state) {
case L4_TargetGeometry::Unknown: return QStringLiteral("Unknown");
case L4_TargetGeometry::Point: return QStringLiteral("Point");
case L4_TargetGeometry::Area: return QStringLiteral("Area");
case L4_TargetGeometry::Radial: return QStringLiteral("Radial");
case L4_TargetGeometry::Linear: return QStringLiteral("Linear");
default: return QStringLiteral("Unknown");
}
}
inline PDM_COMMON_EXPORT QString toString(L7_Request state)
{
switch (state) {
case L7_Request::Unknown: return QStringLiteral("Unknown");
default: return QStringLiteral("Unknown");
}
}
inline PDM_COMMON_EXPORT QString toString(L19_Oi state)
{
switch (state) {
case L19_Oi::Unknown: return QStringLiteral("Unknown");
case L19_Oi::Empty: return QStringLiteral("Empty");
default: return QStringLiteral("Unknown");
}
}
inline PDM_COMMON_EXPORT QString toString(L22_FireHaltCategory state)
{
switch (state) {
case L22_FireHaltCategory::A: return QStringLiteral("A");
case L22_FireHaltCategory::R: return QStringLiteral("R");
case L22_FireHaltCategory::E: return QStringLiteral("E");
case L22_FireHaltCategory::C: return QStringLiteral("C");
case L22_FireHaltCategory::F: return QStringLiteral("F");
default: return QStringLiteral("Unknown");
}
}
inline PDM_COMMON_EXPORT QString toString(L25_KindGuidingLine state)
{
switch (state) {
case L25_KindGuidingLine::FFA: return QStringLiteral("FFA");
case L25_KindGuidingLine::NFA: return QStringLiteral("NFA");
case L25_KindGuidingLine::RFA: return QStringLiteral("RFA");
case L25_KindGuidingLine::FSCL: return QStringLiteral("FSCL");
case L25_KindGuidingLine::RFL: return QStringLiteral("RFL");
case L25_KindGuidingLine::FSSL: return QStringLiteral("FSSL");
case L25_KindGuidingLine::NFL: return QStringLiteral("NFL");
default: return QStringLiteral("Unknown");
}
}
inline PDM_COMMON_EXPORT QString toString(L26_EffectingSystemType state)
{
switch (state) {
case L26_EffectingSystemType::Unknown: return QStringLiteral("Unknown");
case L26_EffectingSystemType::Pzh2000: return QStringLiteral("Pzh2000");
case L26_EffectingSystemType::RRohr: return QStringLiteral("RRohr");
case L26_EffectingSystemType::Mars: return QStringLiteral("Mars");
default: return QStringLiteral("Unknown");
}
}
inline PDM_COMMON_EXPORT QString toString(L27_EffectorId state)
{
switch (state) {
case L27_EffectorId::Unknown: return QStringLiteral("Unknown");
default: return QStringLiteral("Unknown");
}
}
inline PDM_COMMON_EXPORT QString toString(L28_Status state)
{
switch (state) {
case L28_Status::NichtEinsatzbereit: return QStringLiteral("NichtEinsatzbereit");
case L28_Status::Einsatzbereit: return QStringLiteral("Einsatzbereit");
default: return QStringLiteral("Unknown");
}
}
inline PDM_COMMON_EXPORT QString toString(L46_GpsFrequency state)
{
switch (state) {
case L46_GpsFrequency::L1: return QStringLiteral("L1");
case L46_GpsFrequency::L2: return QStringLiteral("L2");
default: return QStringLiteral("Unknown");
}
}
inline PDM_COMMON_EXPORT QString toString(L48_TrajectoryRocket state)
{
switch (state) {
case L48_TrajectoryRocket::Nominal: return QStringLiteral("Nominal");
case L48_TrajectoryRocket::Vertical: return QStringLiteral("Vertical");
default: return QStringLiteral("Unknown");
}
}
} // namespace ProjectDataManagement
@@ -27,8 +27,65 @@ enum class VulnerabilityClass : int
eClassC = 3
};
// STUB: toString-Funktionen für VulnerabilityState + VulnerabilityClass
PDM_COMMON_EXPORT QString toString(VulnerabilityState vs);
PDM_COMMON_EXPORT QString toString(VulnerabilityState vs, VulnerabilityClass vc);
// STUB: VulnerabilityState_def - DDS-generierte Wrapper-Struktur
struct VulnerabilityState_def
{
using type = VulnerabilityState;
static constexpr VulnerabilityState eUnknown = VulnerabilityState::eUnknown;
static constexpr VulnerabilityState eNormal = VulnerabilityState::eNormal;
static constexpr VulnerabilityState eWarning = VulnerabilityState::eWarning;
static constexpr VulnerabilityState eCritical = VulnerabilityState::eCritical;
};
// STUB: VulnerabilityClass_def - DDS-generierte Wrapper-Struktur
struct VulnerabilityClass_def
{
using type = VulnerabilityClass;
static constexpr VulnerabilityClass eUnknown = VulnerabilityClass::eUnknown;
static constexpr VulnerabilityClass eClassA = VulnerabilityClass::eClassA;
static constexpr VulnerabilityClass eClassB = VulnerabilityClass::eClassB;
static constexpr VulnerabilityClass eClassC = VulnerabilityClass::eClassC;
// Statische Member für SoldierInjuries und VehicleDamages
static constexpr VulnerabilityClass SoldierInjuries = VulnerabilityClass::eClassA;
static constexpr VulnerabilityClass VehicleDamages = VulnerabilityClass::eClassB;
};
// STUB: ChargeType Enum
enum class ChargeType : int
{
Unknown = 0,
Live = 1,
Inert = 2,
Practice = 3
};
// STUB: UnitType Enum
enum class UnitType : int
{
Unknown = 0,
Air = 1,
Ground = 2,
Naval = 3
};
// STUB: SimulationType Enum
enum class SimulationType : int
{
Unknown = 0,
Live = 1,
Constructive = 2,
Virtual = 3
};
// STUB: EventType Enum
enum class EventType : int
{
Unknown = 0,
Alarm = 1,
Warning = 2,
Info = 3,
Status = 4
};
} // namespace ProjectDataManagement
@@ -0,0 +1,43 @@
#pragma once
// STUB-HEADER: Diese Datei wird normalerweise von DDS/Codegenerator generiert
// Für die Migration erstellen wir minimale Typ-Definitionen
#include "pdm_types.h"
namespace ProjectDataManagement
{
// STUB: EventType Enum
enum class EventType : int
{
Unknown = 0,
Alarm = 1,
Warning = 2,
Info = 3
};
// STUB: EventType_def - Platzhalter für DDS-generierten Typ
// Wird in AlarmManagement für Event-Typisierung verwendet
struct EventType_def
{
int value{0};
EventType_def() = default;
explicit EventType_def(int v) : value(v) {}
explicit EventType_def(EventType t) : value(static_cast<int>(t)) {}
bool operator==(const EventType_def& other) const { return value == other.value; }
bool operator!=(const EventType_def& other) const { return value != other.value; }
bool operator<(const EventType_def& other) const { return value < other.value; }
};
// STUB: EventData - Basisstruktur für Event-Daten
struct EventData
{
EventType_def eventType;
QString description;
qint64 timestamp{0};
};
} // namespace ProjectDataManagement
@@ -12,7 +12,7 @@
#include <vector>
// QPoint3D ist bereits in LtsUtilsCore/qpoint3d.h definiert
// #include "LtsUtilsCore/qpoint3d.h" // Wird von lts_elevation_manager.h included
// #include "LtsUtils/qpoint3d.h" // Wird von lts_elevation_manager.h included
namespace LtsUtils
{