#pragma once // STUB-HEADER: Diese Datei wird normalerweise von DDS generiert // Für die Migration erstellen wir minimale Typ-Definitionen #include #include #include namespace AreaEffectSimulation { // Forward declarations struct ExplosionSingle; struct EffectCluster; struct AirSupportImpact; struct OffRouteMine; struct TrajectoryAdler; // ExplosionSingle - Einzelne Explosion struct ExplosionSingle { int id = 0; double x = 0.0; double y = 0.0; double z = 0.0; double radius = 0.0; double damage = 0.0; qint64 timestamp = 0; QString type; }; // EffectCluster - Gruppe von Effekten struct EffectCluster { int id = 0; QString name; double x = 0.0; double y = 0.0; double z = 0.0; QList effectIds; qint64 timestamp = 0; }; // AirSupportImpact - Luftunterstützungseffekt struct AirSupportImpact { int id = 0; double x = 0.0; double y = 0.0; double z = 0.0; QString aircraftType; QString weaponType; qint64 timestamp = 0; }; // OffRouteMine - Abseits-Mine struct OffRouteMine { int id = 0; double x = 0.0; double y = 0.0; double z = 0.0; bool active = true; QString mineType; qint64 timestamp = 0; }; // TrajectoryAdler - Flugbahn für Adler struct TrajectoryAdler { int id = 0; QList xPoints; QList yPoints; QList zPoints; qint64 timestamp = 0; QString trajectoryType; }; // AesFilter - Filter für Area Effect Simulation Entities class AesFilter { public: AesFilter() = default; virtual ~AesFilter() = default; // ID getter/setter int id() const { return m_id; } void setId(int id) { m_id = id; } // Content getter/setter für DDS-Daten QString content() const { return m_content; } void setContent(const QString& content) { m_content = content; } private: int m_id = 0; QString m_content; }; } // namespace AreaEffectSimulation