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.

This commit is contained in:
torsten committed 2026-09-07 19:37:54 +02:00
1 parent 18ef659723
commit 8d1897d297
7 files changed
+847

No files matched your search

+40
View File
@@ -0,0 +1,40 @@
#!/bin/bash
set -e
# Run CMake configuration and build inside Docker
docker run --rm \
-v /home/torsten/swy/sandbox:/workspace \
-v /home/torsten/swy/sandbox/rti_license.dat:/workspace/rti_license.dat \
-w /workspace/qt-migration-legatus/qt6-after/qt6-migrated-legatus \
ubuntu:26.04 bash -c "
apt-get update -qq && \
apt-get install -y -qq \
build-essential \
cmake \
libkf6texttemplate-dev \
libqt6core6 \
libqt6gui6 \
libqt6widgets6 \
qt6-base-dev \
qt6-tools-dev-tools \
qt6-tools-dev \
qt6-l10n-tools \
libgtest-dev \
git > /dev/null 2>&1
# Set RTI license and Qt6 path
export RTI_LICENSE_FILE=/workspace/rti_license.dat
export CMAKE_PREFIX_PATH=/opt/Qt/6.10.2/gcc_64
# Clean and configure
rm -rf build4
mkdir -p build4
cd build4
cmake .. \
-DBUILD_RTI=ON \
-DBUILD_ARCGIS=OFF \
-DCMAKE_CXX_STANDARD=17
make -j8 ddscore ddsftccore ddsQoS ddsconnector ddsfts 2>&1 | tee build.log
"
@@ -0,0 +1,385 @@
/**
* DTC definitions
*/
// warning: this file is generated with command
// Lts/Common/CodeGen/codegen_simple.py ALL Lts/Services/ProjectDataManagement/pdm_service.xml build/Lts/Services/ProjectDataManagement/
// at Sun Sep 6 18:00:15 2026
// it will be overwritten by next run - do not modify!
#pragma once
#include "pdm.hpp"
/**
* Type definitions
* => DataTopicClients (DTCs)
*/
namespace DDSGeneric
{
template <typename T>
class GenericDataReader;
template <typename T>
class GenericDataReaderContentFilter;
class DynamicDataReader;
}
namespace DTC
{
template<typename T> class GenericDtc;
template<typename T> class GenericDtcImpl;
template<typename T> class GenericDtcSampleInfo;
template<typename T> class GenericDtcImplSampleInfo;
// Topic ProjectDataManagement::BiteComponentText
using DroBiteComponentText = DDSGeneric::GenericDataReader<ProjectDataManagement::BiteComponentText>;
using BiteComponentText = GenericDtc<DroBiteComponentText>;
using BiteComponentTextImpl = GenericDtcImpl<DroBiteComponentText>;
using DroBiteComponentTextCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::BiteComponentText>;
using BiteComponentTextCF = GenericDtc<DroBiteComponentTextCF>;
using BiteComponentTextCFImpl = GenericDtcImpl<DroBiteComponentTextCF>;
namespace SampleInfo {
using BiteComponentText = GenericDtcSampleInfo<DroBiteComponentText>;
using BiteComponentTextImpl = GenericDtcImplSampleInfo<DroBiteComponentText>;
}
// Topic ProjectDataManagement::BuildingChargeEffect
using DroBuildingChargeEffect = DDSGeneric::GenericDataReader<ProjectDataManagement::BuildingChargeEffect>;
using BuildingChargeEffect = GenericDtc<DroBuildingChargeEffect>;
using BuildingChargeEffectImpl = GenericDtcImpl<DroBuildingChargeEffect>;
using DroBuildingChargeEffectCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::BuildingChargeEffect>;
using BuildingChargeEffectCF = GenericDtc<DroBuildingChargeEffectCF>;
using BuildingChargeEffectCFImpl = GenericDtcImpl<DroBuildingChargeEffectCF>;
namespace SampleInfo {
using BuildingChargeEffect = GenericDtcSampleInfo<DroBuildingChargeEffect>;
using BuildingChargeEffectImpl = GenericDtcImplSampleInfo<DroBuildingChargeEffect>;
}
// Topic ProjectDataManagement::CanComponentString
using DroCanComponentString = DDSGeneric::GenericDataReader<ProjectDataManagement::CanComponentString>;
using CanComponentString = GenericDtc<DroCanComponentString>;
using CanComponentStringImpl = GenericDtcImpl<DroCanComponentString>;
using DroCanComponentStringCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::CanComponentString>;
using CanComponentStringCF = GenericDtc<DroCanComponentStringCF>;
using CanComponentStringCFImpl = GenericDtcImpl<DroCanComponentStringCF>;
namespace SampleInfo {
using CanComponentString = GenericDtcSampleInfo<DroCanComponentString>;
using CanComponentStringImpl = GenericDtcImplSampleInfo<DroCanComponentString>;
}
// Topic ProjectDataManagement::ChargeType
using DroChargeType = DDSGeneric::GenericDataReader<ProjectDataManagement::ChargeType>;
using ChargeType = GenericDtc<DroChargeType>;
using ChargeTypeImpl = GenericDtcImpl<DroChargeType>;
using DroChargeTypeCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::ChargeType>;
using ChargeTypeCF = GenericDtc<DroChargeTypeCF>;
using ChargeTypeCFImpl = GenericDtcImpl<DroChargeTypeCF>;
namespace SampleInfo {
using ChargeType = GenericDtcSampleInfo<DroChargeType>;
using ChargeTypeImpl = GenericDtcImplSampleInfo<DroChargeType>;
}
// Topic ProjectDataManagement::ChargeTypeIgniterTypeIgniterFunction
using DroChargeTypeIgniterTypeIgniterFunction = DDSGeneric::GenericDataReader<ProjectDataManagement::ChargeTypeIgniterTypeIgniterFunction>;
using ChargeTypeIgniterTypeIgniterFunction = GenericDtc<DroChargeTypeIgniterTypeIgniterFunction>;
using ChargeTypeIgniterTypeIgniterFunctionImpl = GenericDtcImpl<DroChargeTypeIgniterTypeIgniterFunction>;
using DroChargeTypeIgniterTypeIgniterFunctionCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::ChargeTypeIgniterTypeIgniterFunction>;
using ChargeTypeIgniterTypeIgniterFunctionCF = GenericDtc<DroChargeTypeIgniterTypeIgniterFunctionCF>;
using ChargeTypeIgniterTypeIgniterFunctionCFImpl = GenericDtcImpl<DroChargeTypeIgniterTypeIgniterFunctionCF>;
namespace SampleInfo {
using ChargeTypeIgniterTypeIgniterFunction = GenericDtcSampleInfo<DroChargeTypeIgniterTypeIgniterFunction>;
using ChargeTypeIgniterTypeIgniterFunctionImpl = GenericDtcImplSampleInfo<DroChargeTypeIgniterTypeIgniterFunction>;
}
// Topic ProjectDataManagement::ChargeTypeLoadType
using DroChargeTypeLoadType = DDSGeneric::GenericDataReader<ProjectDataManagement::ChargeTypeLoadType>;
using ChargeTypeLoadType = GenericDtc<DroChargeTypeLoadType>;
using ChargeTypeLoadTypeImpl = GenericDtcImpl<DroChargeTypeLoadType>;
using DroChargeTypeLoadTypeCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::ChargeTypeLoadType>;
using ChargeTypeLoadTypeCF = GenericDtc<DroChargeTypeLoadTypeCF>;
using ChargeTypeLoadTypeCFImpl = GenericDtcImpl<DroChargeTypeLoadTypeCF>;
namespace SampleInfo {
using ChargeTypeLoadType = GenericDtcSampleInfo<DroChargeTypeLoadType>;
using ChargeTypeLoadTypeImpl = GenericDtcImplSampleInfo<DroChargeTypeLoadType>;
}
// Topic ProjectDataManagement::EquipmentSystemEventFilter
using DroEquipmentSystemEventFilter = DDSGeneric::GenericDataReader<ProjectDataManagement::EquipmentSystemEventFilter>;
using EquipmentSystemEventFilter = GenericDtc<DroEquipmentSystemEventFilter>;
using EquipmentSystemEventFilterImpl = GenericDtcImpl<DroEquipmentSystemEventFilter>;
using DroEquipmentSystemEventFilterCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::EquipmentSystemEventFilter>;
using EquipmentSystemEventFilterCF = GenericDtc<DroEquipmentSystemEventFilterCF>;
using EquipmentSystemEventFilterCFImpl = GenericDtcImpl<DroEquipmentSystemEventFilterCF>;
namespace SampleInfo {
using EquipmentSystemEventFilter = GenericDtcSampleInfo<DroEquipmentSystemEventFilter>;
using EquipmentSystemEventFilterImpl = GenericDtcImplSampleInfo<DroEquipmentSystemEventFilter>;
}
// Topic ProjectDataManagement::EventFilterHgrMineSearch
using DroEventFilterHgrMineSearch = DDSGeneric::GenericDataReader<ProjectDataManagement::EventFilterHgrMineSearch>;
using EventFilterHgrMineSearch = GenericDtc<DroEventFilterHgrMineSearch>;
using EventFilterHgrMineSearchImpl = GenericDtcImpl<DroEventFilterHgrMineSearch>;
using DroEventFilterHgrMineSearchCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::EventFilterHgrMineSearch>;
using EventFilterHgrMineSearchCF = GenericDtc<DroEventFilterHgrMineSearchCF>;
using EventFilterHgrMineSearchCFImpl = GenericDtcImpl<DroEventFilterHgrMineSearchCF>;
namespace SampleInfo {
using EventFilterHgrMineSearch = GenericDtcSampleInfo<DroEventFilterHgrMineSearch>;
using EventFilterHgrMineSearchImpl = GenericDtcImplSampleInfo<DroEventFilterHgrMineSearch>;
}
// Topic ProjectDataManagement::FirePurpose
using DroFirePurpose = DDSGeneric::GenericDataReader<ProjectDataManagement::FirePurpose>;
using FirePurpose = GenericDtc<DroFirePurpose>;
using FirePurposeImpl = GenericDtcImpl<DroFirePurpose>;
using DroFirePurposeCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::FirePurpose>;
using FirePurposeCF = GenericDtc<DroFirePurposeCF>;
using FirePurposeCFImpl = GenericDtcImpl<DroFirePurposeCF>;
namespace SampleInfo {
using FirePurpose = GenericDtcSampleInfo<DroFirePurpose>;
using FirePurposeImpl = GenericDtcImplSampleInfo<DroFirePurpose>;
}
// Topic ProjectDataManagement::GearType
using DroGearType = DDSGeneric::GenericDataReader<ProjectDataManagement::GearType>;
using GearType = GenericDtc<DroGearType>;
using GearTypeImpl = GenericDtcImpl<DroGearType>;
using DroGearTypeCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::GearType>;
using GearTypeCF = GenericDtc<DroGearTypeCF>;
using GearTypeCFImpl = GenericDtcImpl<DroGearTypeCF>;
namespace SampleInfo {
using GearType = GenericDtcSampleInfo<DroGearType>;
using GearTypeImpl = GenericDtcImplSampleInfo<DroGearType>;
}
// Topic ProjectDataManagement::GearTypeChargeType
using DroGearTypeChargeType = DDSGeneric::GenericDataReader<ProjectDataManagement::GearTypeChargeType>;
using GearTypeChargeType = GenericDtc<DroGearTypeChargeType>;
using GearTypeChargeTypeImpl = GenericDtcImpl<DroGearTypeChargeType>;
using DroGearTypeChargeTypeCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::GearTypeChargeType>;
using GearTypeChargeTypeCF = GenericDtc<DroGearTypeChargeTypeCF>;
using GearTypeChargeTypeCFImpl = GenericDtcImpl<DroGearTypeChargeTypeCF>;
namespace SampleInfo {
using GearTypeChargeType = GenericDtcSampleInfo<DroGearTypeChargeType>;
using GearTypeChargeTypeImpl = GenericDtcImplSampleInfo<DroGearTypeChargeType>;
}
// Topic ProjectDataManagement::IgniterFunction
using DroIgniterFunction = DDSGeneric::GenericDataReader<ProjectDataManagement::IgniterFunction>;
using IgniterFunction = GenericDtc<DroIgniterFunction>;
using IgniterFunctionImpl = GenericDtcImpl<DroIgniterFunction>;
using DroIgniterFunctionCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::IgniterFunction>;
using IgniterFunctionCF = GenericDtc<DroIgniterFunctionCF>;
using IgniterFunctionCFImpl = GenericDtcImpl<DroIgniterFunctionCF>;
namespace SampleInfo {
using IgniterFunction = GenericDtcSampleInfo<DroIgniterFunction>;
using IgniterFunctionImpl = GenericDtcImplSampleInfo<DroIgniterFunction>;
}
// Topic ProjectDataManagement::IgniterType
using DroIgniterType = DDSGeneric::GenericDataReader<ProjectDataManagement::IgniterType>;
using IgniterType = GenericDtc<DroIgniterType>;
using IgniterTypeImpl = GenericDtcImpl<DroIgniterType>;
using DroIgniterTypeCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::IgniterType>;
using IgniterTypeCF = GenericDtc<DroIgniterTypeCF>;
using IgniterTypeCFImpl = GenericDtcImpl<DroIgniterTypeCF>;
namespace SampleInfo {
using IgniterType = GenericDtcSampleInfo<DroIgniterType>;
using IgniterTypeImpl = GenericDtcImplSampleInfo<DroIgniterType>;
}
// Topic ProjectDataManagement::LanguageHmi
using DroLanguageHmi = DDSGeneric::GenericDataReader<ProjectDataManagement::LanguageHmi>;
using LanguageHmi = GenericDtc<DroLanguageHmi>;
using LanguageHmiImpl = GenericDtcImpl<DroLanguageHmi>;
using DroLanguageHmiCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::LanguageHmi>;
using LanguageHmiCF = GenericDtc<DroLanguageHmiCF>;
using LanguageHmiCFImpl = GenericDtcImpl<DroLanguageHmiCF>;
namespace SampleInfo {
using LanguageHmi = GenericDtcSampleInfo<DroLanguageHmi>;
using LanguageHmiImpl = GenericDtcImplSampleInfo<DroLanguageHmi>;
}
// Topic ProjectDataManagement::LanguageXdu
using DroLanguageXdu = DDSGeneric::GenericDataReader<ProjectDataManagement::LanguageXdu>;
using LanguageXdu = GenericDtc<DroLanguageXdu>;
using LanguageXduImpl = GenericDtcImpl<DroLanguageXdu>;
using DroLanguageXduCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::LanguageXdu>;
using LanguageXduCF = GenericDtc<DroLanguageXduCF>;
using LanguageXduCFImpl = GenericDtcImpl<DroLanguageXduCF>;
namespace SampleInfo {
using LanguageXdu = GenericDtcSampleInfo<DroLanguageXdu>;
using LanguageXduImpl = GenericDtcImplSampleInfo<DroLanguageXdu>;
}
// Topic ProjectDataManagement::LoadType
using DroLoadType = DDSGeneric::GenericDataReader<ProjectDataManagement::LoadType>;
using LoadType = GenericDtc<DroLoadType>;
using LoadTypeImpl = GenericDtcImpl<DroLoadType>;
using DroLoadTypeCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::LoadType>;
using LoadTypeCF = GenericDtc<DroLoadTypeCF>;
using LoadTypeCFImpl = GenericDtcImpl<DroLoadTypeCF>;
namespace SampleInfo {
using LoadType = GenericDtcSampleInfo<DroLoadType>;
using LoadTypeImpl = GenericDtcImplSampleInfo<DroLoadType>;
}
// Topic ProjectDataManagement::NuclearPreset
using DroNuclearPreset = DDSGeneric::GenericDataReader<ProjectDataManagement::NuclearPreset>;
using NuclearPreset = GenericDtc<DroNuclearPreset>;
using NuclearPresetImpl = GenericDtcImpl<DroNuclearPreset>;
using DroNuclearPresetCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::NuclearPreset>;
using NuclearPresetCF = GenericDtc<DroNuclearPresetCF>;
using NuclearPresetCFImpl = GenericDtcImpl<DroNuclearPresetCF>;
namespace SampleInfo {
using NuclearPreset = GenericDtcSampleInfo<DroNuclearPreset>;
using NuclearPresetImpl = GenericDtcImplSampleInfo<DroNuclearPreset>;
}
// Topic ProjectDataManagement::RadioGroup
using DroRadioGroup = DDSGeneric::GenericDataReader<ProjectDataManagement::RadioGroup>;
using RadioGroup = GenericDtc<DroRadioGroup>;
using RadioGroupImpl = GenericDtcImpl<DroRadioGroup>;
using DroRadioGroupCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::RadioGroup>;
using RadioGroupCF = GenericDtc<DroRadioGroupCF>;
using RadioGroupCFImpl = GenericDtcImpl<DroRadioGroupCF>;
namespace SampleInfo {
using RadioGroup = GenericDtcSampleInfo<DroRadioGroup>;
using RadioGroupImpl = GenericDtcImplSampleInfo<DroRadioGroup>;
}
// Topic ProjectDataManagement::SanitationInjury
using DroSanitationInjury = DDSGeneric::GenericDataReader<ProjectDataManagement::SanitationInjury>;
using SanitationInjury = GenericDtc<DroSanitationInjury>;
using SanitationInjuryImpl = GenericDtcImpl<DroSanitationInjury>;
using DroSanitationInjuryCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::SanitationInjury>;
using SanitationInjuryCF = GenericDtc<DroSanitationInjuryCF>;
using SanitationInjuryCFImpl = GenericDtcImpl<DroSanitationInjuryCF>;
namespace SampleInfo {
using SanitationInjury = GenericDtcSampleInfo<DroSanitationInjury>;
using SanitationInjuryImpl = GenericDtcImplSampleInfo<DroSanitationInjury>;
}
// Topic ProjectDataManagement::SanitationInjuryKind
using DroSanitationInjuryKind = DDSGeneric::GenericDataReader<ProjectDataManagement::SanitationInjuryKind>;
using SanitationInjuryKind = GenericDtc<DroSanitationInjuryKind>;
using SanitationInjuryKindImpl = GenericDtcImpl<DroSanitationInjuryKind>;
using DroSanitationInjuryKindCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::SanitationInjuryKind>;
using SanitationInjuryKindCF = GenericDtc<DroSanitationInjuryKindCF>;
using SanitationInjuryKindCFImpl = GenericDtcImpl<DroSanitationInjuryKindCF>;
namespace SampleInfo {
using SanitationInjuryKind = GenericDtcSampleInfo<DroSanitationInjuryKind>;
using SanitationInjuryKindImpl = GenericDtcImplSampleInfo<DroSanitationInjuryKind>;
}
// Topic ProjectDataManagement::SanitationInjuryPlace1
using DroSanitationInjuryPlace1 = DDSGeneric::GenericDataReader<ProjectDataManagement::SanitationInjuryPlace1>;
using SanitationInjuryPlace1 = GenericDtc<DroSanitationInjuryPlace1>;
using SanitationInjuryPlace1Impl = GenericDtcImpl<DroSanitationInjuryPlace1>;
using DroSanitationInjuryPlace1CF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::SanitationInjuryPlace1>;
using SanitationInjuryPlace1CF = GenericDtc<DroSanitationInjuryPlace1CF>;
using SanitationInjuryPlace1CFImpl = GenericDtcImpl<DroSanitationInjuryPlace1CF>;
namespace SampleInfo {
using SanitationInjuryPlace1 = GenericDtcSampleInfo<DroSanitationInjuryPlace1>;
using SanitationInjuryPlace1Impl = GenericDtcImplSampleInfo<DroSanitationInjuryPlace1>;
}
// Topic ProjectDataManagement::SanitationInjuryPlace2
using DroSanitationInjuryPlace2 = DDSGeneric::GenericDataReader<ProjectDataManagement::SanitationInjuryPlace2>;
using SanitationInjuryPlace2 = GenericDtc<DroSanitationInjuryPlace2>;
using SanitationInjuryPlace2Impl = GenericDtcImpl<DroSanitationInjuryPlace2>;
using DroSanitationInjuryPlace2CF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::SanitationInjuryPlace2>;
using SanitationInjuryPlace2CF = GenericDtc<DroSanitationInjuryPlace2CF>;
using SanitationInjuryPlace2CFImpl = GenericDtcImpl<DroSanitationInjuryPlace2CF>;
namespace SampleInfo {
using SanitationInjuryPlace2 = GenericDtcSampleInfo<DroSanitationInjuryPlace2>;
using SanitationInjuryPlace2Impl = GenericDtcImplSampleInfo<DroSanitationInjuryPlace2>;
}
// Topic ProjectDataManagement::SanitationMaterial
using DroSanitationMaterial = DDSGeneric::GenericDataReader<ProjectDataManagement::SanitationMaterial>;
using SanitationMaterial = GenericDtc<DroSanitationMaterial>;
using SanitationMaterialImpl = GenericDtcImpl<DroSanitationMaterial>;
using DroSanitationMaterialCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::SanitationMaterial>;
using SanitationMaterialCF = GenericDtc<DroSanitationMaterialCF>;
using SanitationMaterialCFImpl = GenericDtcImpl<DroSanitationMaterialCF>;
namespace SampleInfo {
using SanitationMaterial = GenericDtcSampleInfo<DroSanitationMaterial>;
using SanitationMaterialImpl = GenericDtcImplSampleInfo<DroSanitationMaterial>;
}
// Topic ProjectDataManagement::SanitationProcedure
using DroSanitationProcedure = DDSGeneric::GenericDataReader<ProjectDataManagement::SanitationProcedure>;
using SanitationProcedure = GenericDtc<DroSanitationProcedure>;
using SanitationProcedureImpl = GenericDtcImpl<DroSanitationProcedure>;
using DroSanitationProcedureCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::SanitationProcedure>;
using SanitationProcedureCF = GenericDtc<DroSanitationProcedureCF>;
using SanitationProcedureCFImpl = GenericDtcImpl<DroSanitationProcedureCF>;
namespace SampleInfo {
using SanitationProcedure = GenericDtcSampleInfo<DroSanitationProcedure>;
using SanitationProcedureImpl = GenericDtcImplSampleInfo<DroSanitationProcedure>;
}
// Topic ProjectDataManagement::TargetSubType
using DroTargetSubType = DDSGeneric::GenericDataReader<ProjectDataManagement::TargetSubType>;
using TargetSubType = GenericDtc<DroTargetSubType>;
using TargetSubTypeImpl = GenericDtcImpl<DroTargetSubType>;
using DroTargetSubTypeCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::TargetSubType>;
using TargetSubTypeCF = GenericDtc<DroTargetSubTypeCF>;
using TargetSubTypeCFImpl = GenericDtcImpl<DroTargetSubTypeCF>;
namespace SampleInfo {
using TargetSubType = GenericDtcSampleInfo<DroTargetSubType>;
using TargetSubTypeImpl = GenericDtcImplSampleInfo<DroTargetSubType>;
}
// Topic ProjectDataManagement::TargetType
using DroTargetType = DDSGeneric::GenericDataReader<ProjectDataManagement::TargetType>;
using TargetType = GenericDtc<DroTargetType>;
using TargetTypeImpl = GenericDtcImpl<DroTargetType>;
using DroTargetTypeCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::TargetType>;
using TargetTypeCF = GenericDtc<DroTargetTypeCF>;
using TargetTypeCFImpl = GenericDtcImpl<DroTargetTypeCF>;
namespace SampleInfo {
using TargetType = GenericDtcSampleInfo<DroTargetType>;
using TargetTypeImpl = GenericDtcImplSampleInfo<DroTargetType>;
}
// Topic ProjectDataManagement::TargetTypeTargetSubType
using DroTargetTypeTargetSubType = DDSGeneric::GenericDataReader<ProjectDataManagement::TargetTypeTargetSubType>;
using TargetTypeTargetSubType = GenericDtc<DroTargetTypeTargetSubType>;
using TargetTypeTargetSubTypeImpl = GenericDtcImpl<DroTargetTypeTargetSubType>;
using DroTargetTypeTargetSubTypeCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::TargetTypeTargetSubType>;
using TargetTypeTargetSubTypeCF = GenericDtc<DroTargetTypeTargetSubTypeCF>;
using TargetTypeTargetSubTypeCFImpl = GenericDtcImpl<DroTargetTypeTargetSubTypeCF>;
namespace SampleInfo {
using TargetTypeTargetSubType = GenericDtcSampleInfo<DroTargetTypeTargetSubType>;
using TargetTypeTargetSubTypeImpl = GenericDtcImplSampleInfo<DroTargetTypeTargetSubType>;
}
// Topic ProjectDataManagement::TranslationBlob
using DroTranslationBlob = DDSGeneric::GenericDataReader<ProjectDataManagement::TranslationBlob>;
using TranslationBlob = GenericDtc<DroTranslationBlob>;
using TranslationBlobImpl = GenericDtcImpl<DroTranslationBlob>;
using DroTranslationBlobCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::TranslationBlob>;
using TranslationBlobCF = GenericDtc<DroTranslationBlobCF>;
using TranslationBlobCFImpl = GenericDtcImpl<DroTranslationBlobCF>;
namespace SampleInfo {
using TranslationBlob = GenericDtcSampleInfo<DroTranslationBlob>;
using TranslationBlobImpl = GenericDtcImplSampleInfo<DroTranslationBlob>;
}
// Topic ProjectDataManagement::VulnerabilityKind
using DroVulnerabilityKind = DDSGeneric::GenericDataReader<ProjectDataManagement::VulnerabilityKind>;
using VulnerabilityKind = GenericDtc<DroVulnerabilityKind>;
using VulnerabilityKindImpl = GenericDtcImpl<DroVulnerabilityKind>;
using DroVulnerabilityKindCF = DDSGeneric::GenericDataReaderContentFilter<ProjectDataManagement::VulnerabilityKind>;
using VulnerabilityKindCF = GenericDtc<DroVulnerabilityKindCF>;
using VulnerabilityKindCFImpl = GenericDtcImpl<DroVulnerabilityKindCF>;
namespace SampleInfo {
using VulnerabilityKind = GenericDtcSampleInfo<DroVulnerabilityKind>;
using VulnerabilityKindImpl = GenericDtcImplSampleInfo<DroVulnerabilityKind>;
}
} // namespace DTC
@@ -0,0 +1,236 @@
/**
* DTS definitions
*/
// warning: this file is generated with command
// Lts/Common/CodeGen/codegen_simple.py ALL Lts/Services/ProjectDataManagement/pdm_service.xml build/Lts/Services/ProjectDataManagement/
// at Sun Sep 6 18:00:15 2026
// it will be overwritten by next run - do not modify!
#pragma once
#include "pdm.hpp"
/**
* Type definitions
* => DataWriterObjects (DWOs)
* => DataTopicServers (DTSs)
*/
namespace DDSGeneric
{
template <typename T>
class GenericDataWriter;
}
namespace DTS
{
template<typename T> class GenericDts;
template<typename T> class GenericDtsImpl;
// Topic ProjectDataManagement::BiteComponentText
// Interface
using BiteComponentText = GenericDts<ProjectDataManagement::BiteComponentText>;
// Interface impl
using DwoBiteComponentText = DDSGeneric::GenericDataWriter<ProjectDataManagement::BiteComponentText>;
using BiteComponentTextImpl = GenericDtsImpl<DwoBiteComponentText>;
// Topic ProjectDataManagement::BuildingChargeEffect
// Interface
using BuildingChargeEffect = GenericDts<ProjectDataManagement::BuildingChargeEffect>;
// Interface impl
using DwoBuildingChargeEffect = DDSGeneric::GenericDataWriter<ProjectDataManagement::BuildingChargeEffect>;
using BuildingChargeEffectImpl = GenericDtsImpl<DwoBuildingChargeEffect>;
// Topic ProjectDataManagement::CanComponentString
// Interface
using CanComponentString = GenericDts<ProjectDataManagement::CanComponentString>;
// Interface impl
using DwoCanComponentString = DDSGeneric::GenericDataWriter<ProjectDataManagement::CanComponentString>;
using CanComponentStringImpl = GenericDtsImpl<DwoCanComponentString>;
// Topic ProjectDataManagement::ChargeType
// Interface
using ChargeType = GenericDts<ProjectDataManagement::ChargeType>;
// Interface impl
using DwoChargeType = DDSGeneric::GenericDataWriter<ProjectDataManagement::ChargeType>;
using ChargeTypeImpl = GenericDtsImpl<DwoChargeType>;
// Topic ProjectDataManagement::ChargeTypeIgniterTypeIgniterFunction
// Interface
using ChargeTypeIgniterTypeIgniterFunction = GenericDts<ProjectDataManagement::ChargeTypeIgniterTypeIgniterFunction>;
// Interface impl
using DwoChargeTypeIgniterTypeIgniterFunction = DDSGeneric::GenericDataWriter<ProjectDataManagement::ChargeTypeIgniterTypeIgniterFunction>;
using ChargeTypeIgniterTypeIgniterFunctionImpl = GenericDtsImpl<DwoChargeTypeIgniterTypeIgniterFunction>;
// Topic ProjectDataManagement::ChargeTypeLoadType
// Interface
using ChargeTypeLoadType = GenericDts<ProjectDataManagement::ChargeTypeLoadType>;
// Interface impl
using DwoChargeTypeLoadType = DDSGeneric::GenericDataWriter<ProjectDataManagement::ChargeTypeLoadType>;
using ChargeTypeLoadTypeImpl = GenericDtsImpl<DwoChargeTypeLoadType>;
// Topic ProjectDataManagement::EquipmentSystemEventFilter
// Interface
using EquipmentSystemEventFilter = GenericDts<ProjectDataManagement::EquipmentSystemEventFilter>;
// Interface impl
using DwoEquipmentSystemEventFilter = DDSGeneric::GenericDataWriter<ProjectDataManagement::EquipmentSystemEventFilter>;
using EquipmentSystemEventFilterImpl = GenericDtsImpl<DwoEquipmentSystemEventFilter>;
// Topic ProjectDataManagement::EventFilterHgrMineSearch
// Interface
using EventFilterHgrMineSearch = GenericDts<ProjectDataManagement::EventFilterHgrMineSearch>;
// Interface impl
using DwoEventFilterHgrMineSearch = DDSGeneric::GenericDataWriter<ProjectDataManagement::EventFilterHgrMineSearch>;
using EventFilterHgrMineSearchImpl = GenericDtsImpl<DwoEventFilterHgrMineSearch>;
// Topic ProjectDataManagement::FirePurpose
// Interface
using FirePurpose = GenericDts<ProjectDataManagement::FirePurpose>;
// Interface impl
using DwoFirePurpose = DDSGeneric::GenericDataWriter<ProjectDataManagement::FirePurpose>;
using FirePurposeImpl = GenericDtsImpl<DwoFirePurpose>;
// Topic ProjectDataManagement::GearType
// Interface
using GearType = GenericDts<ProjectDataManagement::GearType>;
// Interface impl
using DwoGearType = DDSGeneric::GenericDataWriter<ProjectDataManagement::GearType>;
using GearTypeImpl = GenericDtsImpl<DwoGearType>;
// Topic ProjectDataManagement::GearTypeChargeType
// Interface
using GearTypeChargeType = GenericDts<ProjectDataManagement::GearTypeChargeType>;
// Interface impl
using DwoGearTypeChargeType = DDSGeneric::GenericDataWriter<ProjectDataManagement::GearTypeChargeType>;
using GearTypeChargeTypeImpl = GenericDtsImpl<DwoGearTypeChargeType>;
// Topic ProjectDataManagement::IgniterFunction
// Interface
using IgniterFunction = GenericDts<ProjectDataManagement::IgniterFunction>;
// Interface impl
using DwoIgniterFunction = DDSGeneric::GenericDataWriter<ProjectDataManagement::IgniterFunction>;
using IgniterFunctionImpl = GenericDtsImpl<DwoIgniterFunction>;
// Topic ProjectDataManagement::IgniterType
// Interface
using IgniterType = GenericDts<ProjectDataManagement::IgniterType>;
// Interface impl
using DwoIgniterType = DDSGeneric::GenericDataWriter<ProjectDataManagement::IgniterType>;
using IgniterTypeImpl = GenericDtsImpl<DwoIgniterType>;
// Topic ProjectDataManagement::LanguageHmi
// Interface
using LanguageHmi = GenericDts<ProjectDataManagement::LanguageHmi>;
// Interface impl
using DwoLanguageHmi = DDSGeneric::GenericDataWriter<ProjectDataManagement::LanguageHmi>;
using LanguageHmiImpl = GenericDtsImpl<DwoLanguageHmi>;
// Topic ProjectDataManagement::LanguageXdu
// Interface
using LanguageXdu = GenericDts<ProjectDataManagement::LanguageXdu>;
// Interface impl
using DwoLanguageXdu = DDSGeneric::GenericDataWriter<ProjectDataManagement::LanguageXdu>;
using LanguageXduImpl = GenericDtsImpl<DwoLanguageXdu>;
// Topic ProjectDataManagement::LoadType
// Interface
using LoadType = GenericDts<ProjectDataManagement::LoadType>;
// Interface impl
using DwoLoadType = DDSGeneric::GenericDataWriter<ProjectDataManagement::LoadType>;
using LoadTypeImpl = GenericDtsImpl<DwoLoadType>;
// Topic ProjectDataManagement::NuclearPreset
// Interface
using NuclearPreset = GenericDts<ProjectDataManagement::NuclearPreset>;
// Interface impl
using DwoNuclearPreset = DDSGeneric::GenericDataWriter<ProjectDataManagement::NuclearPreset>;
using NuclearPresetImpl = GenericDtsImpl<DwoNuclearPreset>;
// Topic ProjectDataManagement::RadioGroup
// Interface
using RadioGroup = GenericDts<ProjectDataManagement::RadioGroup>;
// Interface impl
using DwoRadioGroup = DDSGeneric::GenericDataWriter<ProjectDataManagement::RadioGroup>;
using RadioGroupImpl = GenericDtsImpl<DwoRadioGroup>;
// Topic ProjectDataManagement::SanitationInjury
// Interface
using SanitationInjury = GenericDts<ProjectDataManagement::SanitationInjury>;
// Interface impl
using DwoSanitationInjury = DDSGeneric::GenericDataWriter<ProjectDataManagement::SanitationInjury>;
using SanitationInjuryImpl = GenericDtsImpl<DwoSanitationInjury>;
// Topic ProjectDataManagement::SanitationInjuryKind
// Interface
using SanitationInjuryKind = GenericDts<ProjectDataManagement::SanitationInjuryKind>;
// Interface impl
using DwoSanitationInjuryKind = DDSGeneric::GenericDataWriter<ProjectDataManagement::SanitationInjuryKind>;
using SanitationInjuryKindImpl = GenericDtsImpl<DwoSanitationInjuryKind>;
// Topic ProjectDataManagement::SanitationInjuryPlace1
// Interface
using SanitationInjuryPlace1 = GenericDts<ProjectDataManagement::SanitationInjuryPlace1>;
// Interface impl
using DwoSanitationInjuryPlace1 = DDSGeneric::GenericDataWriter<ProjectDataManagement::SanitationInjuryPlace1>;
using SanitationInjuryPlace1Impl = GenericDtsImpl<DwoSanitationInjuryPlace1>;
// Topic ProjectDataManagement::SanitationInjuryPlace2
// Interface
using SanitationInjuryPlace2 = GenericDts<ProjectDataManagement::SanitationInjuryPlace2>;
// Interface impl
using DwoSanitationInjuryPlace2 = DDSGeneric::GenericDataWriter<ProjectDataManagement::SanitationInjuryPlace2>;
using SanitationInjuryPlace2Impl = GenericDtsImpl<DwoSanitationInjuryPlace2>;
// Topic ProjectDataManagement::SanitationMaterial
// Interface
using SanitationMaterial = GenericDts<ProjectDataManagement::SanitationMaterial>;
// Interface impl
using DwoSanitationMaterial = DDSGeneric::GenericDataWriter<ProjectDataManagement::SanitationMaterial>;
using SanitationMaterialImpl = GenericDtsImpl<DwoSanitationMaterial>;
// Topic ProjectDataManagement::SanitationProcedure
// Interface
using SanitationProcedure = GenericDts<ProjectDataManagement::SanitationProcedure>;
// Interface impl
using DwoSanitationProcedure = DDSGeneric::GenericDataWriter<ProjectDataManagement::SanitationProcedure>;
using SanitationProcedureImpl = GenericDtsImpl<DwoSanitationProcedure>;
// Topic ProjectDataManagement::TargetSubType
// Interface
using TargetSubType = GenericDts<ProjectDataManagement::TargetSubType>;
// Interface impl
using DwoTargetSubType = DDSGeneric::GenericDataWriter<ProjectDataManagement::TargetSubType>;
using TargetSubTypeImpl = GenericDtsImpl<DwoTargetSubType>;
// Topic ProjectDataManagement::TargetType
// Interface
using TargetType = GenericDts<ProjectDataManagement::TargetType>;
// Interface impl
using DwoTargetType = DDSGeneric::GenericDataWriter<ProjectDataManagement::TargetType>;
using TargetTypeImpl = GenericDtsImpl<DwoTargetType>;
// Topic ProjectDataManagement::TargetTypeTargetSubType
// Interface
using TargetTypeTargetSubType = GenericDts<ProjectDataManagement::TargetTypeTargetSubType>;
// Interface impl
using DwoTargetTypeTargetSubType = DDSGeneric::GenericDataWriter<ProjectDataManagement::TargetTypeTargetSubType>;
using TargetTypeTargetSubTypeImpl = GenericDtsImpl<DwoTargetTypeTargetSubType>;
// Topic ProjectDataManagement::TranslationBlob
// Interface
using TranslationBlob = GenericDts<ProjectDataManagement::TranslationBlob>;
// Interface impl
using DwoTranslationBlob = DDSGeneric::GenericDataWriter<ProjectDataManagement::TranslationBlob>;
using TranslationBlobImpl = GenericDtsImpl<DwoTranslationBlob>;
// Topic ProjectDataManagement::VulnerabilityKind
// Interface
using VulnerabilityKind = GenericDts<ProjectDataManagement::VulnerabilityKind>;
// Interface impl
using DwoVulnerabilityKind = DDSGeneric::GenericDataWriter<ProjectDataManagement::VulnerabilityKind>;
using VulnerabilityKindImpl = GenericDtsImpl<DwoVulnerabilityKind>;
} // namespace DTS
@@ -0,0 +1,64 @@
/**
* FTC definitions
*/
// warning: this file is generated with command
// Lts/Common/CodeGen/codegen_simple.py ALL Lts/Services/ProjectDataManagement/pdm_service.xml build/Lts/Services/ProjectDataManagement/
// at Sun Sep 6 18:00:15 2026
// it will be overwritten by next run - do not modify!
#pragma once
#include "pdm.hpp"
namespace FTC
{
template <typename REQ, typename REP, typename DUMMY> class GenericFtcImpl;
template<typename GENERIC_FTC> struct TopicNames;
}
namespace ProjectDataManagement
{
// TypeDefinitions for Replies that are not implemented => using Core::FunctionReply
using InsertUpdateTranslationReply = Core::FunctionReply;
using UpdateChargeNamesReply = Core::FunctionReply;
using UpdateChargeTypeRequest = ProjectDataManagement::ChargeType;
using UpdateChargeTypeReply = Core::FunctionReply;
} // namespace ProjectDataManagement
namespace FTC
{
// TypeDefinitions for GenericFtcImpl
class InsertUpdateTranslationTemplateHelperDummy;
using InsertUpdateTranslation = GenericFtcImpl<ProjectDataManagement::InsertUpdateTranslationRequest, ProjectDataManagement::InsertUpdateTranslationReply, InsertUpdateTranslationTemplateHelperDummy>;
template<> struct TopicNames<InsertUpdateTranslation> {
static constexpr const char *functionTopicName() { return "InsertUpdateTranslation"; }
static constexpr const char *replyTopicName() { return "LTS_InsertUpdateTranslationReply"; }
static constexpr const char *replyTopicTypeName() { return "ProjectDataManagement::InsertUpdateTranslationReply"; }
static constexpr const char *requestTopicName() { return "LTS_InsertUpdateTranslationRequest"; }
static constexpr const char *requestTopicTypeName() { return "ProjectDataManagement::InsertUpdateTranslationRequest"; }
};
class UpdateChargeNamesTemplateHelperDummy;
using UpdateChargeNames = GenericFtcImpl<ProjectDataManagement::UpdateChargeNamesRequest, ProjectDataManagement::UpdateChargeNamesReply, UpdateChargeNamesTemplateHelperDummy>;
template<> struct TopicNames<UpdateChargeNames> {
static constexpr const char *functionTopicName() { return "UpdateChargeNames"; }
static constexpr const char *replyTopicName() { return "LTS_UpdateChargeNamesReply"; }
static constexpr const char *replyTopicTypeName() { return "ProjectDataManagement::UpdateChargeNamesReply"; }
static constexpr const char *requestTopicName() { return "LTS_UpdateChargeNamesRequest"; }
static constexpr const char *requestTopicTypeName() { return "ProjectDataManagement::UpdateChargeNamesRequest"; }
};
class UpdateChargeTypeTemplateHelperDummy;
using UpdateChargeType = GenericFtcImpl<ProjectDataManagement::ChargeType, ProjectDataManagement::UpdateChargeTypeReply, UpdateChargeTypeTemplateHelperDummy>;
template<> struct TopicNames<UpdateChargeType> {
static constexpr const char *functionTopicName() { return "UpdateChargeType"; }
static constexpr const char *replyTopicName() { return "LTS_UpdateChargeTypeReply"; }
static constexpr const char *replyTopicTypeName() { return "ProjectDataManagement::UpdateChargeTypeReply"; }
static constexpr const char *requestTopicName() { return "LTS_UpdateChargeTypeRequest"; }
static constexpr const char *requestTopicTypeName() { return "ProjectDataManagement::UpdateChargeTypeRequest"; }
};
} // namespace FTC
@@ -0,0 +1,64 @@
/**
* FTS definitions
*/
// warning: this file is generated with command
// Lts/Common/CodeGen/codegen_simple.py ALL Lts/Services/ProjectDataManagement/pdm_service.xml build/Lts/Services/ProjectDataManagement/
// at Sun Sep 6 18:00:15 2026
// it will be overwritten by next run - do not modify!
#pragma once
#include "pdm.hpp"
namespace FTS
{
template <typename REQ, typename REP, typename DUMMY> class GenericFtsImpl;
template<typename GENERIC_FTS> struct TopicNames;
}
namespace ProjectDataManagement
{
// TypeDefinitions for Replies that are not implemented => using Core::FunctionReply
using InsertUpdateTranslationReply = Core::FunctionReply;
using UpdateChargeNamesReply = Core::FunctionReply;
using UpdateChargeTypeRequest = ProjectDataManagement::ChargeType;
using UpdateChargeTypeReply = Core::FunctionReply;
} // namespace ProjectDataManagement
namespace FTS
{
// TypeDefinitions for GenericFtsImpl
class InsertUpdateTranslationTemplateHelperDummy;
using InsertUpdateTranslation = GenericFtsImpl<ProjectDataManagement::InsertUpdateTranslationRequest, ProjectDataManagement::InsertUpdateTranslationReply, InsertUpdateTranslationTemplateHelperDummy>;
template<> struct TopicNames<InsertUpdateTranslation> {
static constexpr const char *functionTopicName() { return "InsertUpdateTranslation"; }
static constexpr const char *replyTopicName() { return "LTS_InsertUpdateTranslationReply"; }
static constexpr const char *replyTopicTypeName() { return "ProjectDataManagement::InsertUpdateTranslationReply"; }
static constexpr const char *requestTopicName() { return "LTS_InsertUpdateTranslationRequest"; }
static constexpr const char *requestTopicTypeName() { return "ProjectDataManagement::InsertUpdateTranslationRequest"; }
};
class UpdateChargeNamesTemplateHelperDummy;
using UpdateChargeNames = GenericFtsImpl<ProjectDataManagement::UpdateChargeNamesRequest, ProjectDataManagement::UpdateChargeNamesReply, UpdateChargeNamesTemplateHelperDummy>;
template<> struct TopicNames<UpdateChargeNames> {
static constexpr const char *functionTopicName() { return "UpdateChargeNames"; }
static constexpr const char *replyTopicName() { return "LTS_UpdateChargeNamesReply"; }
static constexpr const char *replyTopicTypeName() { return "ProjectDataManagement::UpdateChargeNamesReply"; }
static constexpr const char *requestTopicName() { return "LTS_UpdateChargeNamesRequest"; }
static constexpr const char *requestTopicTypeName() { return "ProjectDataManagement::UpdateChargeNamesRequest"; }
};
class UpdateChargeTypeTemplateHelperDummy;
using UpdateChargeType = GenericFtsImpl<ProjectDataManagement::ChargeType, ProjectDataManagement::UpdateChargeTypeReply, UpdateChargeTypeTemplateHelperDummy>;
template<> struct TopicNames<UpdateChargeType> {
static constexpr const char *functionTopicName() { return "UpdateChargeType"; }
static constexpr const char *replyTopicName() { return "LTS_UpdateChargeTypeReply"; }
static constexpr const char *replyTopicTypeName() { return "ProjectDataManagement::UpdateChargeTypeReply"; }
static constexpr const char *requestTopicName() { return "LTS_UpdateChargeTypeRequest"; }
static constexpr const char *requestTopicTypeName() { return "ProjectDataManagement::UpdateChargeTypeRequest"; }
};
} // namespace FTS
@@ -0,0 +1,24 @@
/**
* Operator Rights (source) definitions
*/
// warning: this file is generated with command
// Lts/Common/CodeGen/codegen_simple.py ALL Lts/Services/ProjectDataManagement/pdm_service.xml build/Lts/Services/ProjectDataManagement/
// at Sun Sep 6 18:00:15 2026
// it will be overwritten by next run - do not modify!
#include "pdm_operator_rights.h"
#include <QCoreApplication>
void doNothing()
{
const char * txt[] {
QT_TRANSLATE_NOOP("OperatorRights", "Charge Visibility"),
QT_TRANSLATE_NOOP("OperatorRights", "Charge Visibility"),
QT_TRANSLATE_NOOP("OperatorRights", "Edit Charge Visibility"),
};
Q_UNUSED(txt);
}
@@ -0,0 +1,34 @@
/**
* Operator Rights definitions
*/
// warning: this file is generated with command
// Lts/Common/CodeGen/codegen_simple.py ALL Lts/Services/ProjectDataManagement/pdm_service.xml build/Lts/Services/ProjectDataManagement/
// at Sun Sep 6 18:00:15 2026
// it will be overwritten by next run - do not modify!
#pragma once
namespace ProjectDataManagement
{
static const int Offset = 29;
}
namespace OperatorRights
{
enum Charges
{
ChargeVisibilityEdit = 0x1d010001,
};
enum Groups_ProjectDataManagement
{
GroupChargeVisibility = 0x1d010000,
};
enum Plugins_ProjectDataManagement
{
PluginCharges = 0x1d010000,
};
} // namespace OperatorRights