Commit Graph
40 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 b656e1aaa9 Resolves latest issues in Lts/Common Lts/DDS 2026-09-06 18:45:59 +02:00
torsten e398f4903d Infrastructure fixes in Lts/Services/RoutingServiceNG only 2026-09-05 19:45:43 +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
torstenandCopilot 497baa804b Qt6/RTI 7.7 Migration: Build-System und RTI-Integration fixes
CMake Build-System:
- NGL_ADD_SUBDIR_GUARDED() vor erstem Aufruf definiert (Zeile 38)
- Z/src wird VOR ENABLE_TESTING() eingebunden
- InfrastructureManagement an Anfang von Lts/Services CMakeLists.txt
- ALIAS Targets für RTI nur für existierende Libraries erstellt

RTI 7.7 Integration:
- generic_base.h: QMetaMethod Include hinzugefügt
- generic_data_reader.h: Template-Signatur auf 2 Parameter angepasst
  - detail::DataReaderImpl<Q> als Default-Template-Parameter

Qt6 Location Support:
- Dockerfile: qtlocation und qtpositioning Module hinzugefügt

Dokumentation:
- C++23 Inkompatibilität mit RTI 7.7 in copilot-instructions.md
- EXTERNAL_DEPENDENCIES.md Strategie dokumentiert

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-30 13:36:41 +02:00
torsten 851d47e114 BUILD_RTI=OFF: 1902/1902 Targets erfolgreich, DDS-Stubs vervollständigt
Neue Stub-Header für BUILD_RTI=OFF Konfiguration:
- include/DDS/Generic/generic_base.h: Topic-Name-Templates, Helper-Funktionen
- include/DDS/Generic/generic_logger.h: Logger-Wrapper mit DataType-Enum
- include/DDS/Generic/ddsgen_export.h: Export-Makros (leer für OFF)
- include/DDS/Generic/generic_data_reader.h: Data Reader Template-Stub
- include/DDS/DTC/generic_dtc.h: Minimale DDS-Typen für DTC
- include/LtsUtils/LtsUtilsCore/data_modification_enum.h: DataModification Enum
- include/FileManagement/flm_dtc_impl.h: Virtuelle Methoden für Name-Helper
- include/OperatorManagement/opm_dtc_impl.h: DtcImpl ohne Q_OBJECT

Wichtige Änderungen:
- QObject-Basisklasse entfernt für DatabaseInterfaceImpl und DtcImpl (BUILD_RTI=OFF)
- Logger-Stub verwendet Qt-Logging (qDebug/qWarning/qCritical)
- FileStatus als int-Alias statt enum class für BUILD_RTI=OFF
- CMake: DDS-Bibliotheken als leere INTERFACE-Targets für BUILD_RTI=OFF
- std::optional: is_set() → has_value(), get() → value()
- QList → std::vector Konversionen korrigiert
- qAsConst-Fehler mit rvalue expressions behoben

Build-Status: 1902/1902 Targets erfolgreich (BUILD_RTI=OFF)
Tests: Nicht ausführbar ohne RTI Connext DDS (BUILD_RTI=ON erforderlich)
2026-08-30 10:36:47 +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 1edc9934fa Session 028: Optional dependencies configuration
- Added WITH_VLC option to Lts/Application/THP (default OFF)
- Added WITH_SCHUSSTAFEL option to CentralEffectSimulation (default OFF)
- Added WITH_ARCGIS option to Explosions plugin (default OFF)
- Protected VLC includes with #ifdef THP_HAS_VLC
- Added qt5compat module to Docker image for QTextCodec support
- Validated CMake configure and lts_common build in Docker container
- All external dependencies now optional, build succeeds without them

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-25 19:55:38 +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 0ca0e9ac60 SIGNAL/SLOT migration: lts_app_descriptor_editor.cpp and qsql_informix.cpp
- Migrated 12 SIGNAL/SLOT connections in lts_app_descriptor_editor.cpp to function-pointer syntax
  - clicked, editingFinished, pressed, textChanged signals
  - Added required includes: QListView, QLineEdit, QPushButton
- Migrated 2 SIGNAL/SLOT connections in qsql_informix.cpp to function-pointer syntax
  - timeout signal connections
- Added Qt5::Core5Compat dependency for QTextCodec support in Qt6
  - Updated CMakeLists.txt to link Qt6::Core5Compat

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-25 09:24:42 +02:00
torsten 060792032b SIGNAL/SLOT migration: socket_handler (5), targettimer (1), socketreader (2) + status update
- Migrated old SIGNAL/SLOT connect syntax to function-pointer syntax
- socket_handler.cpp: timeout, connected, disconnected, readyRead, bytesWritten
- targettimer.cpp: timeout → MyTimerSlot
- socketreader.cpp: readyRead, error (with QOverload for overloaded signal)
- Updated MIGRATION_STATUS.md with migration progress
- Part of Qt5→Qt6 migration with C++17 constraint (RTI 7.7.0 compatibility)
2026-08-25 09:16:43 +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
torsten 793c9f8b81 BUILD_RTI=OFF: Fix remaining include and build issues
TrainingAreaBase:
- Add BUILD_RTI guards to dds_handler.cpp (entire file)
- Add BUILD_RTI guards to recv_from_dds_aes.h for tab_db.h include
- Add BUILD_RTI guards to main_handler.h for tab_db.h include
- Remove duplicate m_logger declaration in main_handler.h
- Add stub headers for RTI types (tab_db_stub.hpp, tab_enums_stub.hpp, etc.)

VideoOverlayManagement:
- Fix member initialization order in handler_overlays.h
- Fix member initialization order in avs_interface.h
- Fix member initialization order in main_handler.h
- Change logger.cpp include from NGLLogger.h to INGLLogger.h
- Add BUILD_RTI guard to handler_overlays.cpp for RTI signal connection

Plugins:
- Migrate QDesktopWidget → QScreen in Light/Dark style plugins
- Fix CMakeLists.txt for SituationReplayManagement (BUILD_RTI guards)
- Fix CMakeLists.txt for CombatNetRadio (Qt6::Core linking)
- Remove QDesktopWidget includes in multiple plugin files

Infrastructure:
- Remove duplicate INGLLogger.h include directory
- Add stub headers for ProjectDataManagement (pdm.hpp, etc.)
- Add stub headers for RoutingServiceNG

BUILD_RTI=OFF build now compiles successfully (1112 targets).
2026-08-24 14:37:16 +02:00
torstenandCopilot 4969e4ff9b Fix INGLLogger initialization for BUILD_RTI=OFF compatibility
- Replace NGL::NGLLoggerBootstrap::getNGLRootLogger() with NGL::getMemoryLogger()
  in all VideoOverlayManagement handler classes
- Fix Qt6 signal syntax in avs_interface.cpp (error → errorOccurred)
- Ensures compatibility with BUILD_RTI=OFF builds
- Affected files:
  * logger.cpp - Added BUILD_RTI guards, use NGL::getMemoryLogger()
  * avs_interface.cpp - Logger init + Qt6 signal fix
  * main_handler.cpp - Logger init fix
  * handler_overlays.cpp - Logger init fix
  * handler_infrastructure_data.cpp - Logger init fix
  * handler_participant_data.cpp - Logger init fix

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-24 12:58:54 +02:00
torstenandCopilot 47985c5a88 Fix LtsUtilsCore include path and BUILD_RTI guards
- LtsUtilsCore/CMakeLists.txt: Fixed include path from /.. to /../..
  for both LtsUtilsCoreHeaderOnly and LtsUtilsCore targets
- session_handler.h: Added #if BUILD_RTI guard around dds_connector.h include
- data_writer_task.h: Removed override specifier from stub methods
  when BUILD_RTI=OFF (base class interface not available)

BUILD_RTI=OFF: 0 errors (validated)
BUILD_RTI=ON: Progresses further, external dependency errors remain
  (svcIsmCommon not available in Docker image - not migration issue)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-24 10:32:31 +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 ec75789fae BUILD_RTI: Fix 4 compile errors and add missing type headers
- generic_base.h: Fix dds::topic namespace issue, move RTI includes inside BUILD_RTI guard
- wait_set_handler.h: Remove duplicate m_logger declarations (3→1)
- pub_sub_base.cpp: Fix constructor initializer list syntax (.→,), add m_logger initialization
- training_area_telegrams.h: Fix field naming (m_ prefix) for accessor methods
- PdmComboBox CMakeLists.txt: Add BUILD_RTI AND TARGET guards for svcPdmCommon/svcPdmClient
- PdmDataPlugin CMakeLists.txt: Wrap svcPdmClient link in BUILD_RTI guard
- CMakeLists.txt: Add RTI_UNIX, RTI_POSIX_THREADS compile definitions, remove duplicate add_subdirectory
- alm_types.h, ppm_types.h: Copy missing type headers from include/ directories

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-23 13:15:31 +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 3cc3129de0 BUILD_RTI guards for DDS/Routing modules + logger init fixes
- Lts/DDS: Add BUILD_RTI guards to pacemaker.h, dds_connector.h,
  generic_fts_* files, generic_base.h, routing_plugin.h
- Lts/Services/RoutingServiceNG: Add BUILD_RTI guards to session.h/cpp,
  connection.h/cpp, data_writer_task.h/cpp
- Fix C++23 reference member initialization: use getLogger() instead of
  getNGLLogger() in constructor initializer lists
- Root CMakeLists.txt: Add Lts/DDS to include_directories
- Fix export header generation order (GENERATE_EXPORT_HEADER before
  TARGET_INCLUDE_DIRECTORIES)
- Remove auto-generated stub files (external deps collected separately)
2026-08-21 21:57:27 +02:00
torstenandCopilot 6588fc7d3f BUILD_RTI guards: svcTabCommon export header + GuezMinelayerProcessing stubs
- TrainingAreaBase/CMakeLists.txt: Wrap RTIDDSGEN with BUILD_RTI, add fallback target
- GuezMinelayerProcessing: BUILD_RTI guards for HandlerMinelayerData + stubs
- ddsfts/CMakeLists.txt: Fix INTERFACE→PUBLIC, add svcTabCommon dependency
- Add stub headers for BUILD_RTI=OFF compilation

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-21 19:27:34 +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
torsten bd10a8db89 AlarmManagement: DataModification-Namespace und Export-Macro korrigiert
- SVCALMCOMMON_EXPORT in logger.h verwendet (statt ALM_COMMON_EXPORT)
- Include für alm_types.h in alm_config_alarm_model.h hinzugefügt
- Include für data_modification_enum.h in allen AlarmManagement-Modellen hinzugefügt
- DataModification → Lts::DataModification in allen Gui-Modellen korrigiert
- GuezNasat gna_dtc.h: Include für data_modification_enum.h hinzugefügt
2026-08-21 01:49:35 +02:00
torsten 9c1463546e Qt6-Migration: Type-Struct, DataModification und Signal/Slot Korrekturen
- ppm.hpp: Type-Methoden von id()/typeClass() zu getId()/getTypeClass() umbenannt
  (Vermeidung von Namenskonflikt mit Member-Variablen)
- ppm.hpp: TypeClass::eUndefined zu TypeClass::eUninitialized geändert
- ppm.hpp: operator<< für Type-Struct hinzugefügt (für INGLLogger)
- ppm_enums.hpp: DataModification, TypeClass, SymbolAppearance, SymbolVisibility Enums
- ppm_enums.hpp: operator<< für TypeClass hinzugefügt
- exm_dtc.h: #include ppm_enums.hpp für DataModification
- exm_dtc.h: DataModification zu ParticipantManagement::DataModification qualifiziert
- gna_dtc.h: Signal-Signaturen auf ParticipantManagement::DataModification angepasst
- gna_dtc.h: #include ppm.hpp hinzugefügt
- gna_nasat_aircraft_part_model.h/.cpp: Namespace-Korrekturen, Member-Zugriffe korrigiert
- gna_nasat_aircraft_part_model.h: onTypeChanged-Slot entfernt (im STUB nicht verfügbar)
- pdm_to_string.h/.cpp: DDS-spezifischen Code entfernt (nur STUB)
- flm_enums.hpp: AlarmConfig, VulnerabilityState Enums hinzugefügt
- pws_vnc_handler.h/.cpp: ProjectionWorkstation Namespace korrigiert
- mrk_marker.h: timeStamp() Methode hinzugefügt
- exm_exercise.h: Syntaxfehler korrigiert
- CMakeLists.txt Anpassungen für BUILD_RTI=ON Support

Build mit BUILD_RTI=ON erfolgreich abgeschlossen.
2026-08-20 18:26:08 +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
torstenandCopilot d6b6ffce7c Apply clang-format to Lts/Common and DTC/enum headers
- Formatted all CodeGen module files (9 files)
- Formatted LtsAppDescriptor module files
- Formatted LtsAppManager/AppChooser files
- Applied clang-format to all DTC and enum headers across modules
- Removed coordTransTests from CommonUnitTestsPlaceholder (moved to tests/)

Cosmetic changes only, no functional modifications.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-19 14:46:29 +02:00
torstenandCopilot bafed3705f Qt6 migration: LtsWidgets API fixes, LtsWebSocket logger init, RTI Docker install
- LtsWidgets: Fixed Qt6 API compatibility issues
  - QWheelEvent::delta() → angleDelta().y()
  - QStyleOption::init() → initFrom()
  - QComboBox activated signal signature change
  - QTextCodec removal (UTF-8 default in Qt6)
  - Missing widget includes added

- LtsWebSocket: Fixed m_logger reference initialization
  - Added NGLLoggerBootstrap includes
  - Proper initialization in constructor initializer lists

- CMake: Added BUILD_LTSWEBSOCKET option for temporary exclusion

- Docker: RTI Connext permanent installation script added
  - ci/install-rti-in-docker.sh for persistent RTI setup
  - Removes need for volume mounting RTI into container

- BUILD options: FilterManagement, RTI, Codification, Grantlee, LtsWebSocket
  can be disabled for partial builds during migration

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-19 14:04:26 +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