Files
qt5-legatus-legacy/Lts/Services/ProjectDataManagement/convert_db_to_dds.h
T
2026-08-13 18:33:10 +02:00

356 lines
9.3 KiB
C++
Executable File

/**
* Convert db structures to dds structures
* $Id$
* $HeadURL$
* $Author$
* Created by Christian Ehrlicher, SLSE, 2017-07-20
*/
#pragma once
#include <ProjectDataManagement/pdm_db.h>
#include <ProjectDataManagement/pdm.hpp>
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