LtsSession-STUB und GuezNasat-Fixes für BUILD_RTI=OFF
- CMakeLists.txt: Conditional compilation für BUILD_RTI=ON/OFF - lts_session_stub.h/cpp: NEU - STUB-Implementation ohne RTI-Abhängigkeit - lts_session_data_dds_stub.h: Doppeltes Namespace-Closing entfernt - gna_nasat_aircraft.h: participantId zu participantIdValue umbenannt (Konflikt) - gna_dtc.h: Doppeldefinitionen entfernt - gna_nasat_aircraft_participant.h: Doppeldefinitionen entfernt - ppm_enums.hpp: DataModification-Enum im ParticipantManagement-Namespace - ElevationMap-STUB: ArcGIS-Abhängigkeit für BUILD_RTI=OFF gekapselt - Viewer-STUB: Header für BUILD_RTI=OFF Build Build-Validierung: Configure erfolgreich, LtsSession-Fehler behoben
This commit is contained in:
17 files changed
+543
-50
No files matched your search
@@ -4,7 +4,7 @@
|
||||
// Für die Migration erstellen wir minimale Typ-Definitionen
|
||||
|
||||
#include "exm_exercise.h"
|
||||
#include "ppm_enums.hpp"
|
||||
#include "ParticipantManagement/ppm_enums.hpp"
|
||||
|
||||
#include <QObject>
|
||||
#include <QList>
|
||||
|
||||
@@ -22,22 +22,8 @@ namespace LtsSession { class LtsSession; }
|
||||
namespace GuezNasat
|
||||
{
|
||||
|
||||
// NasatAircraftParticipant - Verbindung zwischen NASAT, Exercise und Participant
|
||||
struct NasatAircraftParticipant {
|
||||
int id = 0;
|
||||
int nasatAircraftId = 0;
|
||||
int exerciseId = 0;
|
||||
int participantId = 0;
|
||||
|
||||
// Helper methods für Kompatibilität
|
||||
int participantId() const { return participantId; }
|
||||
};
|
||||
|
||||
// NasatAircraft - NASAT Flugzeug
|
||||
struct NasatAircraft {
|
||||
int id = 0;
|
||||
QString name;
|
||||
};
|
||||
// NasatAircraftParticipant und NasatAircraft sind bereits in gna_nasat_aircraft.h definiert
|
||||
// Diese Datei enthält nur die Dtc-Klasse
|
||||
|
||||
namespace Interface
|
||||
{
|
||||
@@ -85,14 +71,14 @@ public:
|
||||
// Daten hinzufügen/entfernen/ändern
|
||||
void addNasatAircraftParticipant(const NasatAircraftParticipant& nap) {
|
||||
m_nasatAircraftParticipants.append(nap);
|
||||
emit nasatAircraftParticipantChanged(nap, DataModification::eAdded);
|
||||
emit nasatAircraftParticipantChanged(nap, ParticipantManagement::DataModification::eAdded);
|
||||
}
|
||||
|
||||
void updateNasatAircraftParticipant(const NasatAircraftParticipant& nap) {
|
||||
for (auto& existing : m_nasatAircraftParticipants) {
|
||||
if (existing.id == nap.id) {
|
||||
existing = nap;
|
||||
emit nasatAircraftParticipantChanged(nap, DataModification::eModified);
|
||||
emit nasatAircraftParticipantChanged(nap, ParticipantManagement::DataModification::eModified);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -104,7 +90,7 @@ public:
|
||||
if (it->id == id) {
|
||||
NasatAircraftParticipant removed = *it;
|
||||
m_nasatAircraftParticipants.erase(it);
|
||||
emit nasatAircraftParticipantChanged(removed, DataModification::eRemoved);
|
||||
emit nasatAircraftParticipantChanged(removed, ParticipantManagement::DataModification::eRemoved);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -112,14 +98,14 @@ public:
|
||||
|
||||
void addNasatAircraft(const NasatAircraft& na) {
|
||||
m_nasatAircrafts.append(na);
|
||||
emit nasatAircraftChanged(na, DataModification::eAdded);
|
||||
emit nasatAircraftChanged(na, ParticipantManagement::DataModification::eAdded);
|
||||
}
|
||||
|
||||
void updateNasatAircraft(const NasatAircraft& na) {
|
||||
for (auto& existing : m_nasatAircrafts) {
|
||||
if (existing.id == na.id) {
|
||||
existing = na;
|
||||
emit nasatAircraftChanged(na, DataModification::eModified);
|
||||
emit nasatAircraftChanged(na, ParticipantManagement::DataModification::eModified);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -131,7 +117,7 @@ public:
|
||||
if (it->id == id) {
|
||||
NasatAircraft removed = *it;
|
||||
m_nasatAircrafts.erase(it);
|
||||
emit nasatAircraftChanged(removed, DataModification::eRemoved);
|
||||
emit nasatAircraftChanged(removed, ParticipantManagement::DataModification::eRemoved);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,10 +24,10 @@ struct GNACOMMON_EXPORT NasatAircraftParticipant
|
||||
int id = 0;
|
||||
int nasatAircraftId = 0;
|
||||
int exerciseId = 0;
|
||||
int participantId = 0;
|
||||
int participantIdValue = 0;
|
||||
|
||||
// Helper method für Kompatibilität
|
||||
int participantId() const { return participantId; }
|
||||
int participantId() const { return participantIdValue; }
|
||||
};
|
||||
|
||||
} // namespace GuezNasat
|
||||
@@ -45,6 +45,6 @@ inline std::ostream& operator<<(std::ostream& os, const GuezNasat::NasatAircraft
|
||||
{
|
||||
os << "NasatAircraftParticipant{id=" << participant.id
|
||||
<< ", nasatAircraftId=" << participant.nasatAircraftId
|
||||
<< ", participantId=" << participant.participantId << "}";
|
||||
<< ", participantId=" << participant.participantIdValue << "}";
|
||||
return os;
|
||||
}
|
||||
@@ -1,15 +1,5 @@
|
||||
#pragma once
|
||||
// STUB-HEADER: Diese Datei wird normalerweise von DDS generiert
|
||||
|
||||
namespace GuezNasat
|
||||
{
|
||||
|
||||
// NasatAircraftParticipant - Verbindung zwischen NASAT, Exercise und Participant
|
||||
struct NasatAircraftParticipant {
|
||||
int id = 0;
|
||||
int nasatAircraftId = 0;
|
||||
int exerciseId = 0;
|
||||
int participantId = 0;
|
||||
};
|
||||
|
||||
} // namespace GuezNasat
|
||||
// NasatAircraftParticipant ist bereits in gna_nasat_aircraft.h definiert
|
||||
#include "gna_nasat_aircraft.h"
|
||||
@@ -3,6 +3,9 @@
|
||||
// STUB-HEADER: Diese Datei wird normalerweise von ddsdtc generiert
|
||||
// Für die Migration erstellen wir minimale Typ-Definitionen
|
||||
|
||||
#include <ostream>
|
||||
#include <QString>
|
||||
|
||||
namespace ParticipantManagement
|
||||
{
|
||||
// Placeholder enums - werden durch echte DDS-Typen ersetzt
|
||||
@@ -10,13 +13,16 @@ enum class SymbolAppearance : int { Solid = 0, Dashed = 1, Dotted = 2 };
|
||||
|
||||
enum class SymbolVisibility : int { Visible = 0, Hidden = 1 };
|
||||
|
||||
enum class TypeClass : int { Unknown = 0, Aircraft = 1, Ground = 2, Naval = 3 };
|
||||
enum class TypeClass : int { eUninitialized = 0, Unknown = 1, Aircraft = 2, Ground = 3, Naval = 4 };
|
||||
|
||||
enum class DataModification : int { eAdded = 0, eModified = 1, eRemoved = 2 };
|
||||
|
||||
inline std::ostream& operator<<(std::ostream& os, TypeClass tc)
|
||||
{
|
||||
switch (tc) {
|
||||
case TypeClass::eUninitialized:
|
||||
os << "eUninitialized";
|
||||
break;
|
||||
case TypeClass::Unknown:
|
||||
os << "Unknown";
|
||||
break;
|
||||
@@ -30,7 +36,7 @@ inline std::ostream& operator<<(std::ostream& os, TypeClass tc)
|
||||
os << "Naval";
|
||||
break;
|
||||
default:
|
||||
os << "Unknown";
|
||||
os << std::string("Unknown");
|
||||
}
|
||||
return os;
|
||||
}
|
||||
|
||||
+74
@@ -0,0 +1,74 @@
|
||||
/**
|
||||
* STUB-Header für ElevationMapManager - Qt6 Migration
|
||||
* Diese Datei ermöglicht das Kompilieren von LtsElevation ohne das vollständige ElevationMap-Modul
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <QObject>
|
||||
#include <QStringList>
|
||||
#include <QRectF>
|
||||
#include <QPointF>
|
||||
#include <vector>
|
||||
|
||||
namespace LtsUtils
|
||||
{
|
||||
struct QPoint3D
|
||||
{
|
||||
double x{0.0};
|
||||
double y{0.0};
|
||||
double z{0.0};
|
||||
};
|
||||
} // namespace LtsUtils
|
||||
|
||||
using LOSVector = std::vector<double>;
|
||||
|
||||
namespace SituationMap
|
||||
{
|
||||
|
||||
class ElevationMapManager final : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
ElevationMapManager();
|
||||
ElevationMapManager(const ElevationMapManager &) = delete;
|
||||
ElevationMapManager &operator = (const ElevationMapManager &) = delete;
|
||||
~ElevationMapManager();
|
||||
|
||||
int init(const QStringList &filePaths_rough_to_fine);
|
||||
void cleanupCurrentContent();
|
||||
|
||||
bool waitForInitialization();
|
||||
bool isValid() const;
|
||||
|
||||
double elevation(double lon_rad, double lat_rad, bool *bIsCovered = nullptr) const;
|
||||
double elevation(double lon_rad, double lat_rad, double defaultValue, bool *bIsCovered = nullptr) const;
|
||||
|
||||
QRectF simpleUnitedExtent() const;
|
||||
|
||||
bool contains(const QPointF &point) const;
|
||||
|
||||
void LOSProfile(const QPointF &start, const QPointF &end, LOSVector &losProfile);
|
||||
|
||||
enum class LineOfSight { LOS_UNDEFINED = 0,
|
||||
LOS_ERROR,
|
||||
LOS_VISIBLE,
|
||||
LOS_INVISIBLE };
|
||||
|
||||
LineOfSight lineOfSightCalculation(const LOSVector &losProfile,
|
||||
double centerHat,
|
||||
double objHat) const;
|
||||
|
||||
LineOfSight lineOfSightCalculation(const LtsUtils::QPoint3D &startPointGeo_absZ,
|
||||
const LtsUtils::QPoint3D &endPointGeo_absZ);
|
||||
|
||||
LineOfSight lineOfSightCalculation(const QPointF &startPointGeo, double startHat,
|
||||
const QPointF &endPointGeo, double endHat);
|
||||
|
||||
protected:
|
||||
class Private;
|
||||
Private *d;
|
||||
}; // ElevationMapManager
|
||||
|
||||
} // namespace SituationMap
|
||||
Reference in new issue
Block a user