GuezNasat: DataModification-Type-Konsistenz und Include-Pfade korrigiert

- gna_nasat_aircraft_model.h/.cpp: Include-Pfad zu <GuezNasat/logger.h>
  korrigiert, Logger-Initialisierung auf GuezNasat::getLogger() umgestellt
- gna_nasat_aircraft_part_model.h/.cpp: Methodensignaturen von
  ParticipantManagement::DataModification zu globalem DataModification
  geändert für konsistente Type-Verwendung
- gna_dtc.h: Include-Pfad für logger.h korrigiert
- gna_nasat_aircraft.h: Member-Variablen zu Getter-Methoden geändert
- CMakeLists.txt: Include-Verzeichnis für GuezNasat-Modul hinzugefügt

Alle Callback-Lambdas verwenden jetzt das globale DataModification-Enum
aus LtsUtilsCore statt dem veralteten ParticipantManagement-Namespace.
This commit is contained in:
torsten committed 2026-08-21 01:49:35 +02:00
1 parent e22dd98040
commit c7fa97c8bf
7 files changed
+81 -60

No files matched your search

@@ -409,7 +409,9 @@ const QString workspaceId() const;
friend class LtsSessionManager;
#endif
#ifdef BUILD_RTI
bool event(QEvent* e) override;
#endif
void createBaseLayout();
#ifdef BUILD_RTI
void initializePlugins(const QVector<LtsPluginManager::AppPluginInstance>& dataPluginList,
@@ -21,7 +21,7 @@ NGL_TARGET_INCLUDE_DIRECTORIES(GnaCommon
${CMAKE_CURRENT_SOURCE_DIR}/../../
${CMAKE_CURRENT_SOURCE_DIR}/../../Services/
${CMAKE_SOURCE_DIR}/Lts/Plugins/
${CMAKE_CURRENT_SOURCE_DIR}/../../../../Proxies/
${CMAKE_SOURCE_DIR}/Lts/Proxies/
)
NGL_TARGET_LINK_LIBRARIES(GnaCommon
PRIVATE
@@ -4,6 +4,8 @@
#include "gna_nasat_aircraft_model.h"
#include <GuezNasat/gna_translation.h>
#include <LtsSession/lts_session_data.h>
#include <ParticipantManagement/ppm_enums.hpp>
#include <LtsUtilsCore/data_modification_enum.h>
namespace GuezNasat
@@ -20,6 +22,7 @@ NasatAircraftModel::NasatAircraftModel(QObject *parent)
tr("Simulation Activated")
},
parent)
, m_logger(GuezNasat::getLogger("NasatAircraftModel"))
, m_dtc(nullptr)
{}
@@ -30,7 +33,9 @@ bool NasatAircraftModel::initModel(const std::shared_ptr<GuezNasat::Interface::D
connect(m_dtc.get(), &Interface::Dtc::nasatAircraftChanged,
this, &NasatAircraftModel::onDataChanged);
this, [this](const NasatAircraft& data, DataModification modType) {
onDataChanged(data, modType);
});
auto cb = [this](const NasatAircraft &data)
{
onDataChanged(data, DataModification::eAdded);
@@ -58,7 +63,7 @@ QVariant NasatAircraftModel::data(const QModelIndex &index, int role) const
case SimulationActive:
return nasatAircraft.simulationActive() ? tr("Yes") : tr("No");
case Name:
return QString::fromStdString(nasatAircraft.name());
return nasatAircraft.name();
}
return QVariant();
@@ -4,6 +4,7 @@
#include "gna_nasat_aircraft_part_model.h"
#include <GuezNasat/gna_translation.h>
#include <ParticipantManagement/ppm_translation.h>
#include <LtsUtilsCore/data_modification_enum.h>
namespace GuezNasat
{
@@ -52,22 +53,22 @@ bool NasatAircraftParticipantModel::initModel(const std::shared_ptr<GuezNasat::I
this, &NasatAircraftParticipantModel::onParticipantChanged);
{
auto cb = [this](const NasatAircraftParticipant &d) { onNasatAircraftParticipantChanged(d, ParticipantManagement::DataModification::eAdded); };
auto cb = [this](const NasatAircraftParticipant &d) { onNasatAircraftParticipantChanged(d, DataModification::eAdded); };
m_dtc->nasatAircraftParticipants(cb);
}
{
auto cb = [this](const NasatAircraft &d) { onNasatAircraftChanged(d, ParticipantManagement::DataModification::eAdded); };
auto cb = [this](const NasatAircraft &d) { onNasatAircraftChanged(d, DataModification::eAdded); };
m_dtc->nasatAircrafts(cb);
}
{
auto cb = [this](const ExerciseManagement::Exercise &d) { onExerciseChanged(d, ParticipantManagement::DataModification::eAdded); };
auto cb = [this](const ExerciseManagement::Exercise &d) { onExerciseChanged(d, DataModification::eAdded); };
m_exm_dtc->exercises(cb);
}
{
auto cb = [this](const ParticipantManagement::Participant &d) { onParticipantChanged(d, ParticipantManagement::DataModification::eAdded); };
auto cb = [this](const ParticipantManagement::Participant &d) { onParticipantChanged(d, DataModification::eAdded); };
m_ppm_dtc->participants(cb);
}
@@ -86,35 +87,35 @@ QVariant NasatAircraftParticipantModel::data(const QModelIndex &index, int role)
if (role == Qt::DecorationRole)
{
if (index.column() == Participant)
return m_participantDecorations.value(nasatAircraftParticipant.participantId);
return m_participantDecorations.value(nasatAircraftParticipant.participantId());
return QVariant();
}
if (index.column() == Id)
{
INFO_LOG(m_logger) << "nasatAircraftParticipant.id=" << nasatAircraftParticipant.id;
return nasatAircraftParticipant.id;
INFO_LOG(m_logger) << "nasatAircraftParticipant.id=" << nasatAircraftParticipant.id();
return nasatAircraftParticipant.id();
}
switch (index.column())
{
case NasatAircreaftId:
return nasatAircraftParticipant.nasatAircraftId;
return nasatAircraftParticipant.nasatAircraftId();
case Nasat:
if (m_nasatNames.contains(nasatAircraftParticipant.nasatAircraftId))
return m_nasatNames[nasatAircraftParticipant.nasatAircraftId];
if (m_nasatNames.contains(nasatAircraftParticipant.nasatAircraftId()))
return m_nasatNames[nasatAircraftParticipant.nasatAircraftId()];
return tr("No Participant");
case ExerciseId:
return nasatAircraftParticipant.exerciseId;
return nasatAircraftParticipant.exerciseId();
case ExerciseName:
if (m_exerciseNames.contains(nasatAircraftParticipant.exerciseId))
return m_exerciseNames[nasatAircraftParticipant.exerciseId];
if (m_exerciseNames.contains(nasatAircraftParticipant.exerciseId()))
return m_exerciseNames[nasatAircraftParticipant.exerciseId()];
return tr("No exercise name available");
case ParticipantId:
return nasatAircraftParticipant.participantId;
return nasatAircraftParticipant.participantId();
case Participant:
if (m_participantHierarchies.contains(nasatAircraftParticipant.participantId))
return m_participantHierarchies[nasatAircraftParticipant.participantId];
if (m_participantHierarchies.contains(nasatAircraftParticipant.participantId()))
return m_participantHierarchies[nasatAircraftParticipant.participantId()];
return tr("No participant name available");
}
@@ -126,7 +127,7 @@ QSet<int> NasatAircraftParticipantModel::getAssociatedNasatIds() const
QSet<int> ret;
ret.reserve(m_vecData.size());
for (const NasatAircraftParticipant &data : m_vecData)
ret += data.nasatAircraftId;
ret += data.nasatAircraftId();
return ret;
}
@@ -135,14 +136,14 @@ QSet<int> NasatAircraftParticipantModel::getAssociatedParticipantIds() const
QSet<int> ret;
ret.reserve(m_vecData.size());
for (const NasatAircraftParticipant &data : m_vecData)
ret += data.participantId;
ret += data.participantId();
return ret;
}
void NasatAircraftParticipantModel::onNasatAircraftParticipantChanged(const GuezNasat::NasatAircraftParticipant &data,
const DataModification modType)
{
if (data.exerciseId != m_session->exerciseId())
if (data.exerciseId() != m_session->exerciseId())
return;
LtsWidgets::LtsAbstractTableModel<GuezNasat::NasatAircraftParticipant>::onDataChanged(data, modType);
@@ -152,35 +153,35 @@ void NasatAircraftParticipantModel::onNasatAircraftParticipantChanged(const Guez
}
void NasatAircraftParticipantModel::onExerciseChanged(const ExerciseManagement::Exercise &data,
const ParticipantManagement::DataModification modType)
const DataModification modType)
{
INFO_LOG(m_logger) << "onExerciseChanged: id=" << data.id << ", name=" << data.name << ", modType=" << static_cast<int>(modType);
switch (modType)
{
case ParticipantManagement::DataModification::eRemoved:
case DataModification::eRemoved:
m_exerciseNames.remove(data.id);
break;
case ParticipantManagement::DataModification::eModified:
case ParticipantManagement::DataModification::eAdded:
case DataModification::eModified:
case DataModification::eAdded:
m_exerciseNames.insert(data.id, data.name);
break;
}
}
void NasatAircraftParticipantModel::onParticipantChanged(const ParticipantManagement::Participant &data,
ParticipantManagement::DataModification modType)
DataModification modType)
{
INFO_LOG(m_logger) << "onParticipantChanged: id=" << data.id << ", name=" << data.name() << ", modType=" << static_cast<int>(modType);
// isDeleted() existiert im STUB nicht - entfernen
switch (modType)
{
case ParticipantManagement::DataModification::eRemoved:
case DataModification::eRemoved:
m_participantHierarchies.remove(data.id);
break;
case ParticipantManagement::DataModification::eModified:
case ParticipantManagement::DataModification::eAdded:
case DataModification::eModified:
case DataModification::eAdded:
{
DEBUG_LOG(m_logger) << "DataModification::eAdded Participant"
<< " TypeId=" << data.typeId
@@ -205,17 +206,17 @@ void NasatAircraftParticipantModel::onParticipantChanged(const ParticipantManage
}
void NasatAircraftParticipantModel::onNasatAircraftChanged(const GuezNasat::NasatAircraft &data,
const ParticipantManagement::DataModification modType)
const DataModification modType)
{
DEBUG_LOG(m_logger) << "onNasatAircraftChanged: id=" << data.id << ", name=" << data.name << ", modType=" << static_cast<int>(modType);
DEBUG_LOG(m_logger) << "onNasatAircraftChanged: id=" << data.id() << ", name=" << data.name() << ", modType=" << static_cast<int>(modType);
switch (modType)
{
case ParticipantManagement::DataModification::eRemoved:
m_nasatNames.remove(data.id);
case DataModification::eRemoved:
m_nasatNames.remove(data.id());
break;
case ParticipantManagement::DataModification::eModified:
case ParticipantManagement::DataModification::eAdded:
m_nasatNames.insert(data.id, data.name);
case DataModification::eModified:
case DataModification::eAdded:
m_nasatNames.insert(data.id(), data.name());
break;
}
emit signalNasatNamesChanged();
@@ -62,13 +62,13 @@ signals:
private slots:
void onNasatAircraftParticipantChanged(const GuezNasat::NasatAircraftParticipant &data,
const ParticipantManagement::DataModification modType);
const DataModification modType);
void onExerciseChanged(const ExerciseManagement::Exercise &data,
const ParticipantManagement::DataModification modType);
const DataModification modType);
void onParticipantChanged(const ParticipantManagement::Participant &data,
ParticipantManagement::DataModification modType);
DataModification modType);
void onNasatAircraftChanged(const GuezNasat::NasatAircraft &data,
const ParticipantManagement::DataModification modType);
const DataModification modType);
private:
@@ -47,7 +47,7 @@ public:
QMap<qint32, NasatAircraftParticipant> nasatAircraftParticipants() const {
QMap<qint32, NasatAircraftParticipant> result;
for (const auto& nap : m_nasatAircraftParticipants) {
result[nap.id] = nap;
result[nap.id()] = nap;
}
return result;
}
@@ -63,7 +63,7 @@ public:
QMap<qint32, NasatAircraft> nasatAircrafts() const {
QMap<qint32, NasatAircraft> result;
for (const auto& na : m_nasatAircrafts) {
result[na.id] = na;
result[na.id()] = na;
}
return result;
}
@@ -76,7 +76,7 @@ public:
void updateNasatAircraftParticipant(const NasatAircraftParticipant& nap) {
for (auto& existing : m_nasatAircraftParticipants) {
if (existing.id == nap.id) {
if (existing.id() == nap.id()) {
existing = nap;
emit nasatAircraftParticipantChanged(nap, ParticipantManagement::DataModification::eModified);
return;
@@ -87,7 +87,7 @@ public:
void removeNasatAircraftParticipant(int id) {
for (auto it = m_nasatAircraftParticipants.begin(); it != m_nasatAircraftParticipants.end(); ++it) {
if (it->id == id) {
if (it->id() == id) {
NasatAircraftParticipant removed = *it;
m_nasatAircraftParticipants.erase(it);
emit nasatAircraftParticipantChanged(removed, ParticipantManagement::DataModification::eRemoved);
@@ -103,7 +103,7 @@ public:
void updateNasatAircraft(const NasatAircraft& na) {
for (auto& existing : m_nasatAircrafts) {
if (existing.id == na.id) {
if (existing.id() == na.id()) {
existing = na;
emit nasatAircraftChanged(na, ParticipantManagement::DataModification::eModified);
return;
@@ -114,7 +114,7 @@ public:
void removeNasatAircraft(int id) {
for (auto it = m_nasatAircrafts.begin(); it != m_nasatAircrafts.end(); ++it) {
if (it->id == id) {
if (it->id() == id) {
NasatAircraft removed = *it;
m_nasatAircrafts.erase(it);
emit nasatAircraftChanged(removed, ParticipantManagement::DataModification::eRemoved);
@@ -12,21 +12,32 @@ namespace GuezNasat
// STUB: NasatAircraft - wird durch echten DDS-Typ ersetzt
struct GNACOMMON_EXPORT NasatAircraft
{
int id = 0;
QString name;
int exerciseId = 0;
// Weitere Felder werden bei Bedarf ergänzt
int idValue = 0;
QString nameValue;
int exerciseIdValue = 0;
int nasatIdValue = 0;
bool simulationActiveValue = false;
// Getter-Methoden für Kompatibilität
int id() const { return idValue; }
QString name() const { return nameValue; }
int exerciseId() const { return exerciseIdValue; }
int nasatId() const { return nasatIdValue; }
bool simulationActive() const { return simulationActiveValue; }
};
// STUB: NasatAircraftParticipant - wird durch echten DDS-Typ ersetzt
struct GNACOMMON_EXPORT NasatAircraftParticipant
{
int id = 0;
int nasatAircraftId = 0;
int exerciseId = 0;
int idValue = 0;
int nasatAircraftIdValue = 0;
int exerciseIdValue = 0;
int participantIdValue = 0;
// Helper method für Kompatibilität
// Getter-Methoden für Kompatibilität
int id() const { return idValue; }
int nasatAircraftId() const { return nasatAircraftIdValue; }
int exerciseId() const { return exerciseIdValue; }
int participantId() const { return participantIdValue; }
};
@@ -36,15 +47,17 @@ struct GNACOMMON_EXPORT NasatAircraftParticipant
#include <ostream>
inline std::ostream& operator<<(std::ostream& os, const GuezNasat::NasatAircraft& aircraft)
{
os << "NasatAircraft{id=" << aircraft.id << ", name=" << aircraft.name.toStdString()
<< ", exerciseId=" << aircraft.exerciseId << "}";
os << "NasatAircraft{id=" << aircraft.id() << ", name=" << aircraft.name().toStdString()
<< ", exerciseId=" << aircraft.exerciseId() << ", nasatId=" << aircraft.nasatId()
<< ", simulationActive=" << aircraft.simulationActive() << "}";
return os;
}
inline std::ostream& operator<<(std::ostream& os, const GuezNasat::NasatAircraftParticipant& participant)
{
os << "NasatAircraftParticipant{id=" << participant.id
<< ", nasatAircraftId=" << participant.nasatAircraftId
<< ", participantId=" << participant.participantIdValue << "}";
os << "NasatAircraftParticipant{id=" << participant.id()
<< ", nasatAircraftId=" << participant.nasatAircraftId()
<< ", exerciseId=" << participant.exerciseId()
<< ", participantId=" << participant.participantId() << "}";
return os;
}