Migrates AreaEffectSimulation to generated rtiddsgen API

Converts accessor calls to plain member access across aes service and plugin.
This commit is contained in:
berrux-dev committed 2026-09-21 02:45:07 +02:00
1 parent e8d07af320
commit 472f537313
102 files changed
+3307 -3313

No files matched your search

@@ -36,7 +36,7 @@ Core::FunctionReplyObject ObjectBorderline::createObject(const Database::AesBord
m_data = dbData;
m_data.effectStart = partitionTime();
m_data.effectStateId = AreaEffectSimulation::AesEffectState_def::EsCreated;
m_data.effectStateId = AreaEffectSimulation::AesEffectState::EsCreated;
m_data.effectDuration = 0;
m_data.chargeTypeId = 312; // see GearClass 1 -> 'pdm.pdm_charge_type' und 'pdm.pdm_gear_type_charge_type' in insert_pdm_values_xxx.sql
@@ -58,7 +58,7 @@ Core::FunctionReplyObject ObjectBorderline::createObject(const Database::AesBord
{
dbSegment.id = 0; // Reset for insert. Otherwise second segment cannot be inserted!
dbSegment.borderlineId = m_data.privBorderlineId; // db
dbSegment.position = QPointF(ddsSegments[i].lon(), ddsSegments[i].lat());
dbSegment.position = QPointF(ddsSegments[i].lon, ddsSegments[i].lat);
dbSegment.positionIndex = i;
if (!m_mainHandler->db()->insert(dbSegment))
@@ -120,7 +120,7 @@ Core::FunctionReplyObject ObjectBorderline::updateObject(const Database::AesBord
// update all segments in tmpDbSegments
for (size_t i = 0; i < ddsSegments.size(); ++i)
{
tmpDbSegments[i].position = QPointF(ddsSegments[i].lon(), ddsSegments[i].lat());
tmpDbSegments[i].position = QPointF(ddsSegments[i].lon, ddsSegments[i].lat);
tmpDbSegments[i].positionIndex = i;
}
@@ -174,19 +174,19 @@ void ObjectBorderline::onPublishData()
AreaEffectSimulation::Borderline ddsData;
ddsData.id(m_data.id);
ddsData.name(m_data.name.toStdString());
ddsData.operatorId(m_data.operatorId.isNull() ? 0 : m_data.operatorId.toInt());
ddsData.isDeleted(effectState() == AesEffectState::EsRemoved);
ddsData.isUsed(false);
ddsData.sampleTime(m_mainHandler->dds()->currentPartitionTimeMSec());
ddsData.chargeStruct().chargeTypeId(m_data.chargeTypeId);
ddsData.effectDuration(m_data.effectDuration);
ddsData.effectStart(toOptional(toMSec(m_data.effectStart)));
ddsData.effectStateId(effectState());
ddsData.partyId(toOptional(m_data.partyId));
ddsData.participantId(toOptional(m_data.participantId));
dbSegment2DdsSegment(m_dbSegments, ddsData.segments());
ddsData.id = m_data.id;
ddsData.name = m_data.name.toStdString();
ddsData.operatorId = m_data.operatorId.isNull() ? 0 : m_data.operatorId.toInt();
ddsData.isDeleted = effectState() == AesEffectState::EsRemoved;
ddsData.isUsed = false;
ddsData.sampleTime = m_mainHandler->dds()->currentPartitionTimeMSec();
ddsData.chargeStruct.chargeTypeId = m_data.chargeTypeId;
ddsData.effectDuration = m_data.effectDuration;
ddsData.effectStart = toOptional(toMSec(m_data.effectStart));
ddsData.effectStateId = effectState();
ddsData.partyId = toOptional(m_data.partyId);
ddsData.participantId = toOptional(m_data.participantId);
dbSegment2DdsSegment(m_dbSegments, ddsData.segments);
if (!m_mainHandler->dds()->dts()->publish(ddsData))
ERROR_LOG(m_logger) << "Error publishing AesBorderline-data to dds";
@@ -203,10 +203,10 @@ void ObjectBorderline::publishAiv()
poly[i] = m_dbSegments.at(i).position;
AesItemView aiv(m_aiv);
aiv.aesItemId(m_data.id);
aiv.chargeStruct().chargeTypeId(m_data.chargeTypeId);
aiv.effectStart(partitionTimeMSec());
ddsVecFromPoly(poly, aiv.form());
aiv.aesItemId = m_data.id;
aiv.chargeStruct.chargeTypeId = m_data.chargeTypeId;
aiv.effectStart = partitionTimeMSec();
ddsVecFromPoly(poly, aiv.form);
const QRectF bounds(poly.boundingRect());
// Hack
@@ -220,18 +220,18 @@ void ObjectBorderline::publishAiv()
y_topRight = bounds.topRight().y();
y_bottmLeft = bounds.bottomLeft().y();
}
aiv.boundingBoxBottomLeft(Core::GeoPosition2D(bounds.bottomLeft().x(), y_bottmLeft));
aiv.boundingBoxTopRight(Core::GeoPosition2D(bounds.topRight().x(), y_topRight));
aiv.aesTypeId(AesType::AtBorderline);
aiv.effectStateId(effectState());
aiv.id(1000 * m_data.id + AesType::AtBorderline);
aiv.partyId(m_data.partyId);
aiv.boundingBoxBottomLeft = Core::GeoPosition2D(bounds.bottomLeft().x(), y_bottmLeft);
aiv.boundingBoxTopRight = Core::GeoPosition2D(bounds.topRight().x(), y_topRight);
aiv.aesTypeId = AesType::AtBorderline;
aiv.effectStateId = effectState();
aiv.id = 1000 * m_data.id + static_cast<int>(AesType::AtBorderline);
aiv.partyId = m_data.partyId;
checkIsCentralAndPublish(aiv.form(), m_aiv.form(), m_data.isCentral);
checkIsCentralAndPublish(aiv.form, m_aiv.form, m_data.isCentral);
if (aiv != m_aiv)
{
aiv.sampleTime(partitionTimeMSec());
aiv.sampleTime = partitionTimeMSec();
m_aiv = aiv;
m_mainHandler->dds()->dts()->publish(aiv);
emit newAiv(aiv);
@@ -243,7 +243,7 @@ void ObjectBorderline::removeTopics()
{
auto dts = m_mainHandler->dds()->dts();
dts->removeBorderlineByKey(m_data.id);
dts->removeAesItemViewByKey(1000 * m_data.id + AesType::AtBorderline);
dts->removeAesItemViewByKey(1000 * m_data.id + static_cast<int>(AesType::AtBorderline));
}
QPolygonF ObjectBorderline::generateForm()