/** * Convert db structures to dds structures * $Id$ * $HeadURL$ * $Author$ * Created by Christian Ehrlicher, SLSE, 2017-07-20 */ #pragma once #include #include namespace ProjectDataManagement { namespace Database { inline BuildingChargeEffect convert(const PdmBuildingChargeEffect &data) { BuildingChargeEffect ddsData; ddsData.id(data.id); ddsData.chargeTypeId(data.chargeTypeId); ddsData.destructiveFactor(data.destructiveFactor); ddsData.penetrationFactor(data.penetrationFactor); ddsData.hitSound(data.hitSound); ddsData.difcueLight(data.difcueLight); ddsData.difcuePyro(data.difcuePyro); return ddsData; } inline ChargeType convert(const PdmChargeType &data) { ChargeType ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.shortName(data.shortName.toStdString()); ddsData.predefinedName(data.predefinedName.toStdString()); ddsData.properties(data.properties.toStdString()); ddsData.legacyId(data.chargeLegacyId); if (!data.disEntity.isEmpty()) ddsData.disEntity(data.disEntity.toStdString()); return ddsData; } inline SanitationMaterial convert(const PdmSanitationMaterial &data) { SanitationMaterial ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.description(data.description.toStdString()); ddsData.version(data.version.toStdString()); return ddsData; } inline SanitationProcedure convert(const PdmSanitationProcedures &data) { SanitationProcedure ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.longName(data.longName.toStdString()); ddsData.type(data.type.toStdString()); ddsData.typeId(data.typeId); ddsData.minimumQualification(data.minimumQualification); ddsData.dataCode(data.dataCode); ddsData.version(data.version.toStdString()); return ddsData; } inline SanitationInjury convert(const PdmSanitationInjury &data) { SanitationInjury ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.kind(data.kind); ddsData.place1(data.place1); ddsData.place2(data.place2); ddsData.vbg(data.vbg); return ddsData; } inline SanitationInjuryKind convert(const PdmSanitationInjuryKind &data) { SanitationInjuryKind ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.version(data.version.toStdString()); return ddsData; } inline SanitationInjuryPlace1 convert(const PdmSanitationInjuryPlace1 &data) { SanitationInjuryPlace1 ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.version(data.version.toStdString()); return ddsData; } inline SanitationInjuryPlace2 convert(const PdmSanitationInjuryPlace2 &data) { SanitationInjuryPlace2 ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.version(data.version.toStdString()); return ddsData; } inline GearTypeChargeType convert(const PdmGearTypeChargeType &data) { GearTypeChargeType ddsData; ddsData.id(data.id); ddsData.gearTypeId(data.gearTypeId); ddsData.chargeTypeId(data.chargeTypeId); ddsData.maxRange(data.maxRange); ddsData.properties(data.properties.toStdString()); return ddsData; } inline GearType convert(const PdmGearType &data) { GearType ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.gearClassId(data.gearClassId); ddsData.tasCode(data.tasCode); ddsData.properties(data.properties.toStdString()); return ddsData; } inline IgniterType convert(const PdmIgniterType &data) { IgniterType ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.shortName(data.shortName.toStdString()); ddsData.properties(data.properties.toStdString()); return ddsData; } inline IgniterFunction convert(const PdmIgniterFunction &data) { IgniterFunction ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.shortName(data.shortName.toStdString()); ddsData.properties(data.properties.toStdString()); return ddsData; } inline LoadType convert(const PdmLoadType &data) { LoadType ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.shortName(data.shortName.toStdString()); ddsData.properties(data.properties.toStdString()); return ddsData; } inline ChargeTypeIgniterTypeIgniterFunction convert(const PdmChargeTypeIgniterTypeIgniterFunction &data) { ChargeTypeIgniterTypeIgniterFunction ddsData; ddsData.id(data.id); ddsData.chargeTypeId(data.chargeTypeId); ddsData.igniterTypeId(data.igniterTypeId); ddsData.igniterFunctionId(data.igniterFunctionId); ddsData.igniterFunctionBaseId(data.igniterFunctionBaseId); ddsData.impactArea(data.impactArea.toStdString()); ddsData.impactRadius(data.impactRadius); ddsData.hazardDistance(data.hazardDistance); ddsData.chargeLegacyId(data.chargeLegacyId); ddsData.properties(data.properties.toStdString()); return ddsData; } inline ChargeTypeLoadType convert(const PdmChargeTypeLoadType &data) { ChargeTypeLoadType ddsData; ddsData.id(data.id); ddsData.chargeTypeId(data.chargeTypeId); ddsData.loadTypeId(data.loadTypeId); ddsData.numbers(data.numbers()); ddsData.properties(data.properties.toStdString()); return ddsData; } inline LanguageHmi convert(const PdmLanguage &data) { LanguageHmi ddsData; ddsData.id(data.id); ddsData.dbLocale(data.dbLocale.toStdString()); ddsData.name(data.name.toStdString()); ddsData.isoCode(data.isoCode.toStdString()); return ddsData; } inline LanguageXdu convert(const PdmLanguageXdu &data) { LanguageXdu ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.isoCode(data.isoCode.toStdString()); return ddsData; } inline RadioGroup convert(const PdmRadioGroup &data) { RadioGroup ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.issi(data.issi); ddsData.group_issi1(data.groupIssi1); ddsData.group_issi2(data.groupIssi2); ddsData.base_group(data.baseGroup); ddsData.radioHostname(data.radioHostname.toStdString()); ddsData.radioPort(data.radioPort); ddsData.radioBackupHostname(data.radioBackupHostname.toStdString()); ddsData.radioBackupPort(data.radioBackupPort); return ddsData; } inline VulnerabilityKind convert(const PdmVulnerabilityKind &data) { VulnerabilityKind ddsData; ddsData.id(data.taVulnerabilityKind); // in db there is no id anymore, IO 2021-03-10 ddsData.playerTypeClassId(data.playerTypeClassId); ddsData.taVulnerabilityKind(data.taVulnerabilityKind); ddsData.vulnerabilityClassId(data.vulnerabilityClassId); ddsData.name(data.name.toStdString()); return ddsData; } inline FirePurpose convert(const PdmFirePurpose &data) { FirePurpose ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.description(data.description.toStdString()); ddsData.properties(data.properties.toStdString()); return ddsData; } inline NuclearPreset convert(const PdmNuclearPreset &data) { NuclearPreset ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.detonationValue(data.detonationValue); ddsData.impactRadius(data.impactRadius); ddsData.borderLengthInner(data.borderLengthInner); ddsData.borderLengthOuter(data.borderLengthOuter); return ddsData; } inline CanComponentString convert(const PdmCanComponentString &data) { CanComponentString ddsData; ddsData.id(data.id); ddsData.bitMask(data.bitMask); ddsData.canDeviceId(data.canDeviceId); ddsData.subDeviceId(data.subDeviceId); ddsData.name(data.name.toStdString()); return ddsData; } inline BiteComponentText convert(const PdmBiteComponentText &data) { BiteComponentText ddsData; ddsData.id(data.id); ddsData.canDeviceId(data.canDeviceId); ddsData.subDeviceId(data.subDeviceId); ddsData.errorNumber(data.errorNumber); ddsData.name(data.name.toStdString()); return ddsData; } inline EquipmentSystemEventFilter convert(const PdmEquipmentSystemEventFilter &data) { EquipmentSystemEventFilter ddsData; ddsData.id(data.id); ddsData.equipmentFunctionId(data.equipmentFunctionalId); ddsData.subDeviceId(data.subDeviceId); ddsData.deviceSpecificCode(data.deviceSpecificCode); return ddsData; } inline EventFilterHgrMineSearch convert(const PdmEventFilterHgrMineSearch &data) { EventFilterHgrMineSearch ddsData; ddsData.id(data.id); ddsData.chargeTypeId(data.chargeTypeId); ddsData.hgrMineSearchFilterType(data.hgrMineSearchFilterTypeId); return ddsData; } inline TargetType convert(const PdmTargetType &data) { TargetType ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.abbreviation(data.abbreviation.toStdString()); ddsData.properties(data.properties.toStdString()); return ddsData; } inline TargetSubType convert(const PdmTargetSubType &data) { TargetSubType ddsData; ddsData.id(data.id); ddsData.name(data.name.toStdString()); ddsData.abbreviation(data.abbreviation.toStdString()); ddsData.properties(data.properties.toStdString()); return ddsData; } inline TargetTypeTargetSubType convert(const PdmTargetTypeTargetSubType &data) { TargetTypeTargetSubType ddsData; ddsData.id(data.id); ddsData.targetTypeId(data.targetTypeId); ddsData.targetSubTypeId(data.targetSubtypeId); ddsData.properties(data.properties.toStdString()); return ddsData; } } // namespace Database } // namespace ProjectDataManagement