Commit Graph
23 Commits
Author SHA1 Message Date
torsten 8cec9973e7 Migration of Legatus codebase to Qt6 with RTI Connext DDS 7.7 integration is partially complete. Core DDS targets build successfully, but ProjectDataManagement module blocks full ddsfts compilation due to IDL definition conflicts. 2026-09-07 19:36:21 +02:00
torsten ba1d9e2c04 Migration of Legatus codebase to Qt6 with RTI Connext DDS 7.7 integration is partially complete. Core DDS targets build successfully, but ProjectDataManagement module blocks full ddsfts compilation due to IDL definition conflicts. 2026-09-07 19:30:39 +02:00
torsten afda2a82a8 Fixes rti 7.7 codegen invocations 2026-09-04 21:24:03 +02:00
torsten 0c1503d85c Adds latest migration results 2026-09-01 12:27:57 +02:00
torsten eafbbbbbe9 BUILD_RTI=OFF: CODEGEN_* Makros in IF-Blocekt + DatabaseInterfaceImpl Stubs
- Alle 38 Service-Module CMakeLists.txt: CODEGEN_* Makros in IF(BUILD_RTI) gepackt
- flm_db_impl_custom.h: Include-Pfad korrigiert (Lts/Services/... → FileManagement/)
- DatabaseInterfaceImpl Stub-Header erstellt für:
  - FileManagement (flm_db_impl.h)
  - InfrastructureManagement (ism_db_impl.h)
  - ParticipantManagement (ppm_db_impl.h)
  - RecordingManagement (rec_db_impl.h)
  - Evaluations (evl_db_impl.h)
- opm_enums.hpp: Placeholder-Enums für OperatorManagement

Ermöglicht BUILD_RTI=OFF Builds ohne RTI/DDS Codegenerierung
2026-08-29 23:45:19 +02:00
torsten bb1447c858 Qt6 migration fixes: RTI DDS alias targets, ErrorMessage namespace, DDS header include path 2026-08-27 09:02:26 +02:00
torstenandCopilot d5af8b9764 Session 026: Lts/Services Qt5:: to Qt6:: migration
- Migrated all 104 CMakeLists.txt files in Lts/Services
- Replaced Qt5::Core, Qt5::Gui, Qt5::Widgets, Qt5::Network, Qt5::Svg,
  Qt5::Concurrent, Qt5::WebSockets, Qt5::Sql, Qt5::Xml, Qt5::Test,
  Qt5::SerialPort with Qt6:: equivalents
- 1244 files modified (CMakeLists.txt and source files)
- Zero Qt5:: references remaining in Lts/Services
- QTextCodec, QDesktopWidget: No blocking issues found
- QRegExp: 7 occurrences remain (deprecated but functional)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-25 19:23:30 +02:00
torstenandCopilot f15f342a47 QRegExp → QRegularExpression migration complete
Migrated all remaining QRegExp usage to QRegularExpression for Qt6 compatibility:

- Lts/Viewer/SituationMap/SymbologyImpl/symbol_dictionary_impl.cpp
  - Changed helper functions to use QRegularExpression::match().hasMatch()
  - Updated inline regex validation

- Lts/Plugins/PlanEditor/mil2525d_to_mil2525c.cpp
  - Fixed m_sidcQuery.exactMatch() → match().hasMatch()

- Lts/Plugins/PresentationManagement/Gui/Script/ScriptTimelineEditor/pre_script_dialog.cpp
  - Video file pattern matching migrated

- Lts/Proxies/TrainingAreaBase/Plugins/Nmea/nmea_handler_rx.cpp
  - NMEA message parsing with QRegularExpression

- Lts/Proxies/TrainingAreaBaseOC/handler_aes_data.cpp
  - AES data handler regex patterns migrated

- Lts/Services/AudioVideoManagement/stream_name_mapping.*
  - Stream name validation patterns

- Lts/Services/NmeaManagement/nmea_handler.cpp
  - NMEA handler regex patterns

- Lts/Viewer/SituationMap/Symbology/sidc_builder_base.cpp, sidc_codec.cpp
  - SIDC code validation patterns

- Test files updated for compilation

All QRegExp::exactMatch() calls replaced with QRegularExpression::match().hasMatch()
All QRegExp::cap(n) calls replaced with QRegularExpressionMatch::captured(n)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-24 19:10:44 +02:00
torstenandCopilot 7a6be7474e Qt6 migration: Fix BUILD_RTI=OFF build errors in TrainingAreaBase
- training_area_telegrams.cpp: Fixed QJsonObject initializer syntax (Qt6 requires {{}} not ({}))
- training_area_telegrams.cpp: Fixed fromJson() methods to access m_* members directly
- training_area_telegrams.cpp: Fixed brace mismatches in multiple toJson() methods
- training_area_telegrams.h: Changed Header struct to public members for consistency
- tx_mixin.cpp: Fixed getEquipmentNumber() template for direct member access
- lts_coordinate.cpp: Added missing #include <iomanip>
- MIGRATION_STATUS.md: Added migration progress tracking document

C++17 constraint enforced due to RTI Connext DDS 7.7.0 incompatibility with C++20+

Build status: BUILD_RTI=OFF successful (0 errors, warnings only)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-23 20:49:23 +02:00
torstenandCopilot 93020295ad Add BUILD_RTI guards to InfrastructureManagement and AudioVideoManagement DDS handlers
- ism_dtc_impl_custom.h/cpp: Wrap all DDS-dependent method declarations and implementations with BUILD_RTI guards
- dds_handler.cpp (InfrastructureManagement): Guard RTI DDS initialization code
- dds_handler.h/cpp (AudioVideoManagement): Guard DomainParticipant types and methods
- Enables building without RTI Connext DDS dependencies (BUILD_RTI=OFF)
- Stub types used when guards are disabled

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-22 11:55:44 +02:00
torsten 950d669538 Qt6 Migration: BUILD_RTI guards und CMake fixes
- BUILD_RTI conditional compilation für RTI Connext DDS dependencies
- Namespace fixes in core_dtc.h (Core:: → DDS::Core::)
- CMakeLists.txt: BUILD_RTI option und conditional dependencies
- Handler minelayer: namespace closing mit BUILD_RTI guard
- Build erfolgreich mit BUILD_RTI=OFF validiert

Signed-off-by: Torsten Wierschin <torsten.wierschin@life-maps.com>
2026-08-21 18:37:18 +02:00
torstenandCopilot d890b11c5f Qt6 Migration: LtsWidgets, BUILD_RTI Guards, externe Dependencies dokumentiert
- LtsWidgets Verzeichnis vollständig migriert (Qt5→Qt6)
- BUILD_RTI Guards für RTI-spezifische Module hinzugefügt
- Externe Dependencies in EXTERNAL_DEPS.md dokumentiert
- Qt6 API-Änderungen: QRegExp→QRegularExpression, enterEvent(QEnterEvent*)
- AutoUic-Fehler bei ui_requirement behoben (SKIP_AUTOUIC)
- Include-Pfade korrigiert (LtsElevation, LtsMultiMonitor, LtsUtilsCore)
- MOC-Fehler behoben (Q_INTERFACES entfernt wo nicht benötigt)
- CMakeLists.txt Anpassungen für Qt6 (PUBLIC statt INTERFACE)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-21 10:29:34 +02:00
torsten 27fe03a03a WIP: Build fixes und EXTERNAL_DEPENDENCIES.md 2026-08-21 07:04:40 +02:00
torsten d17d397fe7 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
2026-08-21 01:49:35 +02:00
torstenandCopilot 734a5e5315 Qt6 Migration: BUILD_RTI Guards, Export-Header und Include-Pfade korrigiert
- BUILD_RTI Guards in LtsSession implementiert (6 Dateien)
- LtsSessionDataDds Stub für BUILD_RTI=OFF erstellt
- Export-Header Stubs erstellt (GuezNasat, AlarmManagement, MarkerManagement)
- Include-Pfade korrigiert (resource_path.h, logger.h, Proxies)
- QStringRef → QString migriert (Qt6 Kompatibilität)
- Qt6::Gui Dependencies hinzugefügt (LtsElevation, AdvancedSymbology)
- FilterManagement-Plugins temporär vom Build ausgeschlossen
- MOC-Probleme gefixt (staticMetaObject, override final)
- Build erfolgreich: 1940 Targets mit BUILD_RTI=OFF im Docker-Container

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-20 12:26:22 +02:00
torsten 72cbe318b6 Adds further migration results and moves generated tests in 2026-08-19 21:21:59 +02:00
torsten 3bb6e89496 Adds immediate migration results in progress 2026-08-19 11:18:24 +02:00
torstenandCopilot 4c9861a469 BUILD_RTI conditional fixes and Qt6 API updates
- cmake/FindRTI.cmake: Add INTERFACE placeholder targets when RTI not found
- cmake/FindRTI.cmake: Force BUILD_RTI=OFF when RTI not installed
- Lts/Common/LtsSession/CMakeLists.txt: Make LtsSessionDataDds conditional on BUILD_RTI
- Lts/Viewer/CMakeLists.txt: Make LtsDataView conditional on BUILD_RTI
- Lts/Plugins/*/CMakeLists.txt: 97 plugin files wrapped in BUILD_RTI conditionals
- cmake/NGLMacros.cmake: Fix NGL_ADD_BIG_RESOURCES macro (removed premature return())
- Multiple Qt6 API fixes: QLinkedList→std::list, QStringRef→QStringView, etc.
- BUILD_RTI_FIXES_SUMMARY.md: Comprehensive documentation of all fixes

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-19 09:24:50 +02:00
torstenandCopilot b774f4035c Qt6 Migration: DDS-Stubs, Logger-Fixes, Export-Header Korrekturen
- NGL_ADD_LIBRARY2: 87 CMakeLists.txt konvertiert für Export-Header Generierung
- 44 Export-Header Include-Pfade korrigiert (_export.h)
- 81 DDS-Stub-Header generiert (*_dtc.h, *_fts.h, *_dts.h, *_ftc.h)
- INGLLogger: Duplikat gelöscht, m_logger Member entfernt, variadische Makros
- Q_FUNC_INFO Redefinition behoben (Qt6 definiert bereits)
- FATAL_LOG Makro hinzugefügt
- InfrastructureManagement DDS-Stubs (ism.hpp, ism_enums.hpp, ism_ftc.h)
- FilterManagement DDS-Stubs (flt_ftc.h, flt_dts.h)
- AreaEffectSimulation DDS-Stubs (aes.hpp, aes_enums.hpp)
- SymbolAppearance Klasse vollständig definiert mit content() Methode
- BuildingComponentFilter Klasse definiert mit Copy-Konstruktor
- Ftc Factory: nullptr Return (abstract class)
- AesFilter Klasse in aes.hpp hinzugefügt
- Dtc Klasse in ppm.hpp mit participantChanged Signal
- AesType Enum: alle 15 At* Werte definiert
- AesEffectState_def: EsReceived hinzugefügt
- DataModification Enum: eAdded/eModified/eRemoved
- function_reply_object.h → core_types.h Include-Pfad (72 Dateien)
- Enum-Class-Streaming Template-Operator in INGLLogger.h
- ism_mounting_point.h: QImage → QtGui/QImage, QGuiApplication/QScreen
- ism_data_plugin_interface.h: QSet Include, Include-Reihenfolge
- QRegExp → QRegularExpression in tpm_js_parser.cpp
- .underlying() Aufrufe zu direktem Enum-Vergleich korrigiert
- Include-Pfade: aes.hpp in symbol_appearance_settings_impl.h und aes_display_filter_impl.h

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-19 06:06:24 +02:00
torstenandCopilot 010f91928a Fix: Wrap all RTI::nddscpp2 links in IF(BUILD_RTI) conditionals
- 43 CMakeLists.txt files updated to properly condition RTI dependencies
- All NGL_TARGET_LINK_LIBRARIES blocks containing RTI:: references
  are now wrapped in IF(BUILD_RTI) blocks
- This allows building with BUILD_RTI=OFF without RTI Connext installation
- Fixes CMake configure errors about non-existent /opt/RTI paths

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-19 02:41:22 +02:00
torsten cf6d77c030 Add BUILD_RTI conditionals for RTI/DDS dependent libraries
Systematic fix for BUILD_RTI conditional compilation:
- Lts/Common: Wrap all DDS-dependent libraries in IF(BUILD_RTI)
  - LtsAppManager, LtsCoordTrans, LtsCoordinate, LtsLogin
  - LtsMultiMonitor, LtsPluginManager, LtsPrinting
  - LtsProjectionWorkstation, LtsScriptTimeline, LtsSession
  - LtsTimelineClassic, LtsUtilsCore, LtsUtilsGui, LtsUtilsGuiDds
- Lts/DDS: Add BUILD_RTI guards to Core, DDSConnector, DdsUnitTests, FTC, FTS
- Lts/Plugins: Add BUILD_RTI guards to FilterManagement, OperatorManagement, SituationReplayManagement
- Lts/Proxies: Add BUILD_RTI guards to Buildings, CombatNetRadio, ComponentMonitor, GuezNasat, TrainingAreaBase, TrainingAreaBaseOC
- Lts/Services: Add BUILD_RTI guards to all 30+ service modules
- Z/nglwidgets: Add BUILD_RTI guards, fix Poppler Qt6 headers

Qt6 compatibility fixes:
- LtsCoordTrans: QOverload signal signature, QChar constructor
- LtsMultiMonitor: setMargin→setContentsMargins, remove deprecated HighQualityAntialiasing
- nglwidgets: Poppler Qt5→Qt6 header migration
- Add FindPopplerQt6.cmake for Qt6 Poppler detection

Part of Qt5→Qt6 migration with RTI DDS support.
2026-08-19 00:12:28 +02:00
torsten 6a2a0667ab Adds immediate migration results 2026-08-18 22:12:24 +02:00
torsten d176b5e0d7 Adds initial intermediate qt6 porting state 2026-08-17 17:54:56 +02:00