Commit Graph
3 Commits
Author SHA1 Message Date
torsten 758ae0f53f 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:18:30 +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