Migrates residual Lts sources to generated rtiddsgen API

Adds NmeaManagement tests, fixes codegen includes and Qt6 SerialPort CMake target.
This commit is contained in:
berrux-dev committed 2026-09-23 12:05:37 +02:00
1 parent 5485a90385
commit 881d44f4dd
512 files changed
+6887 -6426

No files matched your search

@@ -85,10 +85,10 @@ bool HandlerParticipantEvent::init()
void HandlerParticipantEvent::onAesItemViewChanged(const AreaEffectSimulation::AesItemView &data, DataModification modType)
{
DEBUG_LOG(m_logger) << "AesItemId: " << data.aesItemId() << ", effectState: " << data.effectStateId();
DEBUG_LOG(m_logger) << "AesItemId: " << data.aesItemId << ", effectState: " << data.effectStateId;
Database::EemEvent eData = m_aesMap[data.id()];
eData.sampleTime = data.effectStart();
Database::EemEvent eData = m_aesMap[data.id];
eData.sampleTime = data.effectStart;
if (data.partyId.is_set())
eData.partyId = data.partyId.get();
@@ -96,24 +96,24 @@ void HandlerParticipantEvent::onAesItemViewChanged(const AreaEffectSimulation::A
switch(modType)
{
case DataModification::eAdded:
m_itemViews.insert(data.aesItemId(), data.aesTypeId());
DEBUG_LOG(m_logger) << "eAdded: AesItemId: " << data.aesItemId() << ", effectState: " << data.effectStateId();
m_aesEffectState.insert(data.aesItemId(), data.effectStateId());
m_itemViews.insert(data.aesItemId, data.aesTypeId);
DEBUG_LOG(m_logger) << "eAdded: AesItemId: " << data.aesItemId << ", effectState: " << data.effectStateId;
m_aesEffectState.insert(data.aesItemId, data.effectStateId);
if (data.aesTypeId() == AreaEffectSimulation::AesType_def::AtBorderline)
if (data.aesTypeId == AreaEffectSimulation::AesType::AesType_AtBorderline)
{
AreaEffectSimulation::AesItem aesItem;
m_aesDtc->aesItemFromId(data.aesItemId(), aesItem);
m_aesDtc->aesItemFromId(data.aesItemId, aesItem);
QJsonObject obj;
obj[QStringLiteral("AesId")] = QJsonValue(aesItem.id());
obj[QStringLiteral("AesName")] = QJsonValue(QString::fromStdString(aesItem.name()));
obj[QStringLiteral("AesType")] = QJsonValue(data.aesTypeId().underlying());
obj[QStringLiteral("AesId")] = QJsonValue(aesItem.id);
obj[QStringLiteral("AesName")] = QJsonValue(QString::fromStdString(aesItem.name));
obj[QStringLiteral("AesType")] = QJsonValue(data.aesTypeId.underlying());
eData.properties = QString::fromUtf8(QJsonDocument(obj).toJson(QJsonDocument::Compact));
eData.eventTypeId = ProjectDataManagement::PdmEventType::Borderline;
eData.position = LtsUtils::QPoint3D(data.boundingBoxBottomLeft().lon(),
data.boundingBoxBottomLeft().lat(), 0.0);
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_Borderline;
eData.position = LtsUtils::QPoint3D(data.boundingBoxBottomLeft.lon,
data.boundingBoxBottomLeft.lat, 0.0);
if (!m_dbHandler->db()->insert(eData))
ERROR_LOG(m_logger) << "Error while inserting event data from AES ";
@@ -123,89 +123,89 @@ void HandlerParticipantEvent::onAesItemViewChanged(const AreaEffectSimulation::A
break;
case DataModification::eModified:
{
AreaEffectSimulation::AesEffectState effectState = m_aesEffectState.value(data.aesItemId());
AreaEffectSimulation::AesEffectState effectState = m_aesEffectState.value(data.aesItemId);
DEBUG_LOG(m_logger) << "eModified: AesItemId: " << data.aesItemId() << ", effectState: " << data.effectStateId();
DEBUG_LOG(m_logger) << "eModified: AesItemId: " << data.aesItemId << ", effectState: " << data.effectStateId;
DEBUG_LOG(m_logger) << "effectState: " << effectState;
// insert event only once
if (effectState != AreaEffectSimulation::AesEffectState::EsPrepared &&
(effectState == AreaEffectSimulation::AesEffectState_def::EsActivated && data.effectStateId() != AreaEffectSimulation::AesEffectState_def::EsExpired))
(effectState == AreaEffectSimulation::AesEffectState::AesEffectState_EsActivated && data.effectStateId != AreaEffectSimulation::AesEffectState::AesEffectState_EsExpired))
return;
INFO_LOG(m_logger) << "new/update event: aesId: " << data.aesItemId();
INFO_LOG(m_logger) << "new/update event: aesId: " << data.aesItemId;
m_aesEffectState.insert(data.aesItemId(), data.effectStateId());
m_itemViews.insert(data.aesItemId(), data.aesTypeId());
eData.position = LtsUtils::QPoint3D(data.boundingBoxBottomLeft().lon(),
data.boundingBoxBottomLeft().lat(), 0.0);
m_aesEffectState.insert(data.aesItemId, data.effectStateId);
m_itemViews.insert(data.aesItemId, data.aesTypeId);
eData.position = LtsUtils::QPoint3D(data.boundingBoxBottomLeft.lon,
data.boundingBoxBottomLeft.lat, 0.0);
INFO_LOG(m_logger) << "aesType: " << data.aesTypeId();
INFO_LOG(m_logger) << "aesType: " << data.aesTypeId;
switch (data.aesTypeId().underlying())
switch (data.aesTypeId.underlying())
{
case AreaEffectSimulation::AesType::AtMineArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType::MineArea;
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_MineArea;
break;
case AreaEffectSimulation::AesType::AtExplosionArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType::HitEffectSimulation;
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_HitEffectSimulation;
break;
case AreaEffectSimulation::AesType::AtExplosionCluster:
eData.eventTypeId = ProjectDataManagement::PdmEventType::ExplosionCluster;
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_ExplosionCluster;
break;
case AreaEffectSimulation::AesType::AtMineAreaSingleMines:
return;
case AreaEffectSimulation::AesType::AtNContamination:
eData.eventTypeId = ProjectDataManagement::PdmEventType::NContamination;
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_NContamination;
break;
case AreaEffectSimulation::AesType::AtBCContamination:
eData.eventTypeId = ProjectDataManagement::PdmEventType::BCContamination;
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_BCContamination;
break;
case AreaEffectSimulation::AesType::AtBorderline:
eData.eventTypeId = ProjectDataManagement::PdmEventType::Borderline;
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_Borderline;
break;
case AreaEffectSimulation::AesType::AtDangerArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType::DangerArea;
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_DangerArea;
break;
case AreaEffectSimulation::AesType::AtFunctionalArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType::FunctionalArea;
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_FunctionalArea;
break;
case AreaEffectSimulation::AesType::AtMineCorridor:
eData.eventTypeId = ProjectDataManagement::PdmEventType::MineCorridor;
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_MineCorridor;
break;
case AreaEffectSimulation::AesType::AtTechnicalArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType::TechnicalArea;
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_TechnicalArea;
break;
case AreaEffectSimulation::AesType::AtGasPipe:
eData.eventTypeId = ProjectDataManagement::PdmEventType::GasPipe;
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_GasPipe;
break;
// No ExerciseEvent for AesType
default:
{
INFO_LOG(m_logger) << "No ExerciseEvent for AesType:" << data.aesTypeId().underlying();
INFO_LOG(m_logger) << "No ExerciseEvent for AesType:" << data.aesTypeId.underlying();
return;
}
}
AreaEffectSimulation::AesItem aesItem;
m_aesDtc->aesItemFromId(data.aesItemId(), aesItem);
m_aesDtc->aesItemFromId(data.aesItemId, aesItem);
if (eData.eventTypeId == ProjectDataManagement::PdmEventType::ExplosionCluster)
if (eData.eventTypeId == ProjectDataManagement::PdmEventType::EventType_ExplosionCluster)
{
ProjectDataManagement::GearClass gearClass = m_pdmDtc->gearClassFromChargeTypeId(aesItem.chargeStruct().chargeTypeId());
if (gearClass == ProjectDataManagement::GearClass_def::AirSupport)
eData.eventTypeId = ProjectDataManagement::PdmEventType::AirSupport;
ProjectDataManagement::GearClass gearClass = m_pdmDtc->gearClassFromChargeTypeId(aesItem.chargeStruct.chargeTypeId);
if (gearClass == ProjectDataManagement::GearClass::GearClass_AirSupport)
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_AirSupport;
}
QJsonObject obj;
obj[QStringLiteral("AesId")] = QJsonValue(aesItem.id());
obj[QStringLiteral("AesName")] = QJsonValue(QString::fromStdString(aesItem.name()));
obj[QStringLiteral("AesType")] = QJsonValue(data.aesTypeId().underlying());
if (data.aesTypeId().underlying() != AreaEffectSimulation::AesType::AtBorderline)
obj[QStringLiteral("AesId")] = QJsonValue(aesItem.id);
obj[QStringLiteral("AesName")] = QJsonValue(QString::fromStdString(aesItem.name));
obj[QStringLiteral("AesType")] = QJsonValue(data.aesTypeId.underlying());
if (data.aesTypeId.underlying() != AreaEffectSimulation::AesType::AtBorderline)
{
obj[QStringLiteral("duration")] = QJsonValue(aesItem.effectDuration());
obj[QStringLiteral("ChargeTypeId")] = QJsonValue(data.chargeStruct().chargeTypeId());
obj[QStringLiteral("endTime")] = QJsonValue(data.effectStart() + aesItem.effectDuration());
obj[QStringLiteral("duration")] = QJsonValue(aesItem.effectDuration);
obj[QStringLiteral("ChargeTypeId")] = QJsonValue(data.chargeStruct.chargeTypeId);
obj[QStringLiteral("endTime")] = QJsonValue(data.effectStart + aesItem.effectDuration);
}
eData.properties = QString::fromUtf8(QJsonDocument(obj).toJson(QJsonDocument::Compact));
@@ -216,7 +216,7 @@ void HandlerParticipantEvent::onAesItemViewChanged(const AreaEffectSimulation::A
ERROR_LOG(m_logger) << "Error while inserting event data from AES ";
break;
}
m_aesMap.insert(data.id(), eData);
m_aesMap.insert(data.id, eData);
}
else
{
@@ -231,8 +231,8 @@ void HandlerParticipantEvent::onAesItemViewChanged(const AreaEffectSimulation::A
}
case DataModification::eRemoved:
{
m_itemViews.remove(data.aesItemId());
m_aesMap.remove(data.id());
m_itemViews.remove(data.aesItemId);
m_aesMap.remove(data.id);
break;
}
}
@@ -241,7 +241,7 @@ void HandlerParticipantEvent::onAesItemViewChanged(const AreaEffectSimulation::A
void HandlerParticipantEvent::onExplosionSingleChanged(const AreaEffectSimulation::ExplosionSingle &data, DataModification modType)
{
Database::EemEvent eData = m_aesMap[data.id()];
Database::EemEvent eData = m_aesMap[data.id];
if ( !data.effectStart.is_set())
{
return;
@@ -254,37 +254,37 @@ void HandlerParticipantEvent::onExplosionSingleChanged(const AreaEffectSimulatio
switch(modType)
{
case DataModification::eAdded:
m_aesEffectState.insert(data.id(), data.effectStateId());
m_aesEffectState.insert(data.id, data.effectStateId);
break;
case DataModification::eModified:
{
AreaEffectSimulation::AesEffectState effectState = m_aesEffectState.value(data.id());
AreaEffectSimulation::AesEffectState effectState = m_aesEffectState.value(data.id);
// insert event only once
if (effectState != AreaEffectSimulation::AesEffectState::EsPrepared &&
(effectState == AreaEffectSimulation::AesEffectState_def::EsActivated && data.effectStateId() != AreaEffectSimulation::AesEffectState_def::EsExpired))
(effectState == AreaEffectSimulation::AesEffectState::AesEffectState_EsActivated && data.effectStateId != AreaEffectSimulation::AesEffectState::AesEffectState_EsExpired))
return;
m_aesEffectState.insert(data.id(), data.effectStateId());
m_aesEffectState.insert(data.id, data.effectStateId);
//m_itemViews.insert(data.id(), data.aesTypeId());
eData.eventTypeId = ProjectDataManagement::PdmEventType::FireEvent;
eData.eventTypeId = ProjectDataManagement::PdmEventType::EventType_FireEvent;
AreaEffectSimulation::AesItem aesItem;
m_aesDtc->aesItemFromId(data.id(), aesItem);
m_aesDtc->aesItemFromId(data.id, aesItem);
QJsonObject obj;
obj[QStringLiteral("AesId")] = QJsonValue(aesItem.id());
obj[QStringLiteral("AesName")] = QJsonValue(QString::fromStdString(aesItem.name()));
obj[QStringLiteral("AesId")] = QJsonValue(aesItem.id);
obj[QStringLiteral("AesName")] = QJsonValue(QString::fromStdString(aesItem.name));
obj[QStringLiteral("AesType")] = QJsonValue(AreaEffectSimulation::AesType::AtExplosionSingle);
obj[QStringLiteral("ChargeTypeId")] = QJsonValue(data.chargeStruct().chargeTypeId());
obj[QStringLiteral("duration")] = QJsonValue(aesItem.effectDuration());
obj[QStringLiteral("endTime")] = QJsonValue(data.effectStart.get() + aesItem.effectDuration());
obj[QStringLiteral("ChargeTypeId")] = QJsonValue(data.chargeStruct.chargeTypeId);
obj[QStringLiteral("duration")] = QJsonValue(aesItem.effectDuration);
obj[QStringLiteral("endTime")] = QJsonValue(data.effectStart.get() + aesItem.effectDuration);
eData.properties = QString::fromUtf8(QJsonDocument(obj).toJson(QJsonDocument::Compact));
//const Core::GeoPosition geoPosition ( data.impactPosition().lon(), data.impactPosition().lat(), 0);
const LtsUtils::QPoint3D pos3D (data.impactPosition().lon(), data.impactPosition().lat(), 0);
const LtsUtils::QPoint3D pos3D (data.impactPosition.lon, data.impactPosition.lat, 0);
eData.position = pos3D;
if (eData.id <= 0)
@@ -294,7 +294,7 @@ void HandlerParticipantEvent::onExplosionSingleChanged(const AreaEffectSimulatio
ERROR_LOG(m_logger) << "Error while inserting event data from AES ";
break;
}
m_aesMap.insert(data.id(), eData);
m_aesMap.insert(data.id, eData);
}
else
{
@@ -319,77 +319,77 @@ void HandlerParticipantEvent::onParticipantEventChanged(const CentralEffectSimul
Database::EemEvent eData;
eData.participantId = data.participantId();
eData.equipmentNumber = data.equipmentNumber();
eData.partyId = data.partyId();
eData.sampleTime = data.eventTime();
eData.position = LtsUtils::QPoint3D(data.position().lon(), data.position().lat(), data.position().z());
eData.participantId = data.participantId;
eData.equipmentNumber = data.equipmentNumber;
eData.partyId = data.partyId;
eData.sampleTime = data.eventTime;
eData.position = LtsUtils::QPoint3D(data.position.lon, data.position.lat, data.position.z);
DEBUG_LOG(m_logger) << " onParticipantEventChanged "
<< " position=" << data.position()
<< " position=" << data.position
<< " eData.position=" << eData.position;
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::Unknown;
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_Unknown;
QJsonObject obj;
obj[QStringLiteral("AesId")] = QJsonValue(data.aesItemId());
obj[QStringLiteral("AesType")] = QJsonValue(m_itemViews.value(data.aesItemId()).underlying());
obj[QStringLiteral("AesName")] = QJsonValue(QString::fromStdString(data.aesName()));
obj[QStringLiteral("FriendlyFire")] = QJsonValue(data.friendlyFire());
obj[QStringLiteral("AesId")] = QJsonValue(data.aesItemId);
obj[QStringLiteral("AesType")] = QJsonValue(m_itemViews.value(data.aesItemId).underlying());
obj[QStringLiteral("AesName")] = QJsonValue(QString::fromStdString(data.aesName));
obj[QStringLiteral("FriendlyFire")] = QJsonValue(data.friendlyFire);
switch(data.eventTypeId().underlying())
switch(data.eventTypeId.underlying())
{
case ProjectDataManagement::PdmEventType_def::HitEffectSimulation:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::HitEffectSimulation;
case ProjectDataManagement::PdmEventType::PdmEventType_HitEffectSimulation:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_HitEffectSimulation;
break;
case ProjectDataManagement::PdmEventType_def::HitMine:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::HitMine;
case ProjectDataManagement::PdmEventType::PdmEventType_HitMine:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_HitMine;
break;
case ProjectDataManagement::PdmEventType_def::HitN:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::HitN;
case ProjectDataManagement::PdmEventType::PdmEventType_HitN:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_HitN;
break;
case ProjectDataManagement::PdmEventType_def::HitC:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::HitC;
case ProjectDataManagement::PdmEventType::PdmEventType_HitC:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_HitC;
break;
case ProjectDataManagement::PdmEventType_def::EnterDangerArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::EnterDangerArea;
case ProjectDataManagement::PdmEventType::PdmEventType_EnterDangerArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_EnterDangerArea;
break;
case ProjectDataManagement::PdmEventType_def::LeaveDangerArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::LeaveDangerArea;
case ProjectDataManagement::PdmEventType::PdmEventType_LeaveDangerArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_LeaveDangerArea;
break;
case ProjectDataManagement::PdmEventType_def::EnterMineArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::EnterMineArea;
case ProjectDataManagement::PdmEventType::PdmEventType_EnterMineArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_EnterMineArea;
break;
case ProjectDataManagement::PdmEventType_def::LeaveMineArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::LeaveMineArea;
case ProjectDataManagement::PdmEventType::PdmEventType_LeaveMineArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_LeaveMineArea;
break;
case ProjectDataManagement::PdmEventType_def::EnterNuclear:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::EnterNuclear;
case ProjectDataManagement::PdmEventType::PdmEventType_EnterNuclear:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_EnterNuclear;
break;
case ProjectDataManagement::PdmEventType_def::LeaveNuclear:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::LeaveNuclear;
case ProjectDataManagement::PdmEventType::PdmEventType_LeaveNuclear:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_LeaveNuclear;
break;
case ProjectDataManagement::PdmEventType_def::CrossLocalBorderline:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::CrossLocalBorderline;
case ProjectDataManagement::PdmEventType::PdmEventType_CrossLocalBorderline:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_CrossLocalBorderline;
obj[QStringLiteral("Global")] = QJsonValue(false);
break;
case ProjectDataManagement::PdmEventType_def::CrossGlobalBorderline:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::CrossGlobalBorderline;
case ProjectDataManagement::PdmEventType::PdmEventType_CrossGlobalBorderline:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_CrossGlobalBorderline;
obj[QStringLiteral("Global")] = QJsonValue(true);
break;
case ProjectDataManagement::PdmEventType_def::EnterFunctionalArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::EnterFunctionalArea;
case ProjectDataManagement::PdmEventType::PdmEventType_EnterFunctionalArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_EnterFunctionalArea;
break;
case ProjectDataManagement::PdmEventType_def::LeaveFunctionalArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::LeaveFunctionalArea;
case ProjectDataManagement::PdmEventType::PdmEventType_LeaveFunctionalArea:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_LeaveFunctionalArea;
break;
case ProjectDataManagement::PdmEventType_def::EnterHazardDistance:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::EnterHazardDistance;
case ProjectDataManagement::PdmEventType::PdmEventType_EnterHazardDistance:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_EnterHazardDistance;
break;
case ProjectDataManagement::PdmEventType_def::LeaveHazardDistance:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::LeaveHazardDistance;
case ProjectDataManagement::PdmEventType::PdmEventType_LeaveHazardDistance:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_LeaveHazardDistance;
break;
case ProjectDataManagement::PdmEventType_def::AirSupport:
eData.eventTypeId = ProjectDataManagement::PdmEventType_def::AirSupport;
case ProjectDataManagement::PdmEventType::PdmEventType_AirSupport:
eData.eventTypeId = ProjectDataManagement::PdmEventType::PdmEventType_AirSupport;
break;
default:
return;
@@ -416,22 +416,22 @@ void HandlerParticipantEvent::publishData(const Database::EemEvent &data)
ERROR_LOG(m_logger) << "Error publishing event-data to dds";
// take data from dds-bus after 10s, we need just to make sure the recording service got it
m_mainHandler->addEventIdToRemove(ddsData.id());
m_mainHandler->addEventIdToRemove(ddsData.id);
}
ExerciseEventManagement::Event HandlerParticipantEvent::toDdsData(const Database::EemEvent &data)
{
ExerciseEventManagement::Event ddsData;
ddsData.id(data.id);
ddsData.sampleTime(data.sampleTime);
ddsData.participantId(data.participantId);
ddsData.partyId(data.partyId);
ddsData.equipmentNumber(data.equipmentNumber);
ddsData.eventTypeId(data.eventTypeId);
ddsData.properties(data.properties.toStdString());
ddsData.id = data.id;
ddsData.sampleTime = data.sampleTime;
ddsData.participantId = data.participantId;
ddsData.partyId = data.partyId;
ddsData.equipmentNumber = data.equipmentNumber;
ddsData.eventTypeId = data.eventTypeId;
ddsData.properties = data.properties.toStdString();
// Core::GeoPosition LtsUtils::QPoint3D
Core::GeoPosition position(data.position.x(), data.position.y(),data.position.z());
ddsData.position(position);
ddsData.position = position;
return ddsData;
}