Migrates residual Lts sources to generated rtiddsgen API
Adds NmeaManagement tests, fixes codegen includes and Qt6 SerialPort CMake target.
This commit is contained in:
1 parent
5485a90385
commit
881d44f4dd
512 files changed
+6887
-6426
No files matched your search
+215
-215
@@ -62,104 +62,104 @@ RecvFromDdsFts::RecvFromDdsFts(MainHandler *mainHandler, const std::shared_ptr<I
|
||||
void RecvFromDdsFts::onDemandBiteRequest(const rti::core::SampleIdentity &cookie, const DemandBiteRequest &request)
|
||||
{
|
||||
TetraIcd::DemandBite data;
|
||||
data.withSelfTest = request.withSelfTest();
|
||||
data.withSelfTest = request.withSelfTest;
|
||||
|
||||
bool bRet = true;
|
||||
// TODO: fixme
|
||||
for (const int equipNo : request.equipmentNumbers())
|
||||
for (const int equipNo : request.equipmentNumbers)
|
||||
{
|
||||
data.header.equipmentNumber = equipNo;
|
||||
if (!m_txCallback->txData(data))
|
||||
bRet = false;
|
||||
}
|
||||
|
||||
m_ftsTab->demandBiteReply(cookie, fillFro(request.requestId(), bRet));
|
||||
m_ftsTab->demandBiteReply(cookie, fillFro(request.requestId, bRet));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onDemandInitRequest(const rti::core::SampleIdentity &cookie, const DemandInitRequest &request)
|
||||
{
|
||||
TetraIcd::Init data;
|
||||
data.workstationId = request.workstationId();
|
||||
data.resetManipulation = request.resetManipulation();
|
||||
data.resetVulnerabilityState = request.resetVulnerabilityState();
|
||||
data.restockCharges = request.restockCharges();
|
||||
data.restockSanitationMaterial = request.restockSanitationMaterial();
|
||||
data.workstationId = request.workstationId;
|
||||
data.resetManipulation = request.resetManipulation;
|
||||
data.resetVulnerabilityState = request.resetVulnerabilityState;
|
||||
data.restockCharges = request.restockCharges;
|
||||
data.restockSanitationMaterial = request.restockSanitationMaterial;
|
||||
bool bRet = true;
|
||||
// TODO: fixme
|
||||
for (const int equipNo : request.equipmentNumbers())
|
||||
for (const int equipNo : request.equipmentNumbers)
|
||||
{
|
||||
data.header.equipmentNumber = equipNo;
|
||||
if (!m_txCallback->txData(data))
|
||||
bRet = false;
|
||||
}
|
||||
|
||||
m_ftsTab->demandInitReply(cookie, fillFro(request.requestId(), bRet));
|
||||
m_ftsTab->demandInitReply(cookie, fillFro(request.requestId, bRet));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendSetVulnerabilityModelRequest(const rti::core::SampleIdentity &cookie, const SendSetVulnerabilityModelRequest &request)
|
||||
{
|
||||
TetraIcd::SetVulnerabilityModel data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.vulnerabilityModelMineIed = request.vulnerabilityModelMineIed();
|
||||
data.vulnerabilityModelAreaFire = request.vulnerabilityModelAreaFire();
|
||||
data.vulnerabilityModelOperatingResource = request.vulnerabilityModelOperationalResource();
|
||||
data.vulnerabilityModelAcWeaponry = request.vulnerabilityModelACWeaponry();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.vulnerabilityModelMineIed = request.vulnerabilityModelMineIed;
|
||||
data.vulnerabilityModelAreaFire = request.vulnerabilityModelAreaFire;
|
||||
data.vulnerabilityModelOperatingResource = request.vulnerabilityModelOperationalResource;
|
||||
data.vulnerabilityModelAcWeaponry = request.vulnerabilityModelACWeaponry;
|
||||
|
||||
m_ftsTab->sendSetVulnerabilityModelReply(cookie, fillFro(request.participantId(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendSetVulnerabilityModelReply(cookie, fillFro(request.participantId, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onDemandConfigurationReportRequest(const rti::core::SampleIdentity &cookie, const DemandConfigurationReportRequest &request)
|
||||
{
|
||||
TetraIcd::DemandEquipmentConfigurationReport data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
|
||||
m_ftsTab->demandConfigurationReportReply(cookie, fillFro(request.participantId(), m_txCallback->txData(data)));
|
||||
m_ftsTab->demandConfigurationReportReply(cookie, fillFro(request.participantId, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onDemandVulnerabilityStateChangeRequest(const rti::core::SampleIdentity &cookie, const DemandVulnerabilityStateChangeRequest &request)
|
||||
{
|
||||
TetraIcd::DemandVulnerabilityStateChange data;
|
||||
data.reqestedState = static_cast<TetraIcd::VulnerabilityState>(request.vulnerabilityState().underlying());
|
||||
data.workstationId = request.workstationId();
|
||||
data.vulnerabilityVitalityIndex = getVulnerabilityVitalityIndexFromVitalityAndVba(request.vulnerabilityKind(), request.vitality());
|
||||
data.reqestedState = static_cast<TetraIcd::VulnerabilityState>(request.vulnerabilityState);
|
||||
data.workstationId = request.workstationId;
|
||||
data.vulnerabilityVitalityIndex = getVulnerabilityVitalityIndexFromVitalityAndVba(request.vulnerabilityKind, request.vitality);
|
||||
|
||||
bool bRet = true;
|
||||
// TODO: fixme
|
||||
for (const int equipNo : request.equipmentNumbers())
|
||||
for (const int equipNo : request.equipmentNumbers)
|
||||
{
|
||||
data.header.equipmentNumber = equipNo;
|
||||
if (!m_txCallback->txData(data))
|
||||
bRet = false;
|
||||
}
|
||||
|
||||
m_ftsTab->demandVulnerabilityStateChangeReply(cookie, fillFro(request.requestId(), bRet));
|
||||
m_ftsTab->demandVulnerabilityStateChangeReply(cookie, fillFro(request.requestId, bRet));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendLanguageSelectionRequest(const rti::core::SampleIdentity &cookie, const SendLanguageSelectionRequest &request)
|
||||
{
|
||||
TetraIcd::LanguageSelection data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.languageSelection = static_cast<TetraIcd::Language>(request.language().underlying());
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.languageSelection = static_cast<TetraIcd::Language>(request.language);
|
||||
|
||||
m_ftsTab->sendLanguageSelectionReply(cookie, fillFro(request.participantId(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendLanguageSelectionReply(cookie, fillFro(request.participantId, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendEquipmentMessageRequest(const rti::core::SampleIdentity &cookie, const SendEquipmentMessageRequest &request)
|
||||
{
|
||||
if (request.sender().is_set() &&
|
||||
request.subject().is_set() &&
|
||||
request.message().is_set())
|
||||
if (request.sender.is_set() &&
|
||||
request.subject.is_set() &&
|
||||
request.message.is_set())
|
||||
{
|
||||
// Message to O/C
|
||||
TetraIcd::EquipmentMessageOC data;
|
||||
data.senderId = request.sender().get();
|
||||
data.subject = request.subject().get();
|
||||
data.message = request.message().get();
|
||||
data.senderId = request.sender.get();
|
||||
data.subject = request.subject.get();
|
||||
data.message = request.message.get();
|
||||
data.header.timeStamp = QDateTime::currentMSecsSinceEpoch();
|
||||
|
||||
bool bRet = true;
|
||||
// TODO: fixme
|
||||
for (const int equipNo : request.equipmentNumbers())
|
||||
for (const int equipNo : request.equipmentNumbers)
|
||||
{
|
||||
data.header.equipmentNumber = equipNo;
|
||||
data.receiverId = equipNo;
|
||||
@@ -172,10 +172,10 @@ void RecvFromDdsFts::onSendEquipmentMessageRequest(const rti::core::SampleIdenti
|
||||
else
|
||||
{
|
||||
TetraIcd::EquipmentMessage data;
|
||||
if (request.messageId().is_set())
|
||||
data.msgId = request.messageId().get();
|
||||
else if (request.message().is_set())
|
||||
data.message = request.message().get();
|
||||
if (request.messageId.is_set())
|
||||
data.msgId = request.messageId.get();
|
||||
else if (request.message.is_set())
|
||||
data.message = request.message.get();
|
||||
else
|
||||
{
|
||||
m_ftsTab->sendEquipmentMessageReply(cookie, fillFro(0, false));
|
||||
@@ -184,14 +184,14 @@ void RecvFromDdsFts::onSendEquipmentMessageRequest(const rti::core::SampleIdenti
|
||||
}
|
||||
bool bRet = true;
|
||||
// TODO: fixme
|
||||
for (const int equipNo : request.equipmentNumbers())
|
||||
for (const int equipNo : request.equipmentNumbers)
|
||||
{
|
||||
data.header.equipmentNumber = equipNo;
|
||||
if (!m_txCallback->txData(data))
|
||||
bRet = false;
|
||||
}
|
||||
|
||||
m_ftsTab->sendEquipmentMessageReply(cookie, fillFro(request.requestId(), bRet));
|
||||
m_ftsTab->sendEquipmentMessageReply(cookie, fillFro(request.requestId, bRet));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -199,82 +199,82 @@ void RecvFromDdsFts::onSendOcDataRequest(const rti::core::SampleIdentity &cookie
|
||||
{
|
||||
TetraIcd::OpaquePayloadDataOut data;
|
||||
data.payloadType = TetraIcd::OpaquePayloadDataBase::Type::OC;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.payload = request.payload();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.payload = request.payload;
|
||||
|
||||
m_ftsTab->sendOcDataReply(cookie, fillFro(request.participantId(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendOcDataReply(cookie, fillFro(request.participantId, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendFireSmokeMarkerDataRequest(const rti::core::SampleIdentity &cookie, const SendFireSmokeMarkerDataRequest &request)
|
||||
{
|
||||
TetraIcd::OpaquePayloadDataOut data;
|
||||
data.payloadType = TetraIcd::OpaquePayloadDataBase::Type::FireSmokeMarker;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.payload = request.payload();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.payload = request.payload;
|
||||
|
||||
m_ftsTab->sendFireSmokeMarkerDataReply(cookie, fillFro(request.participantId(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendFireSmokeMarkerDataReply(cookie, fillFro(request.participantId, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendGeopairingDataRequest(const rti::core::SampleIdentity &cookie, const SendGeopairingDataRequest &request)
|
||||
{
|
||||
TetraIcd::OpaquePayloadDataOut data;
|
||||
data.payloadType = TetraIcd::OpaquePayloadDataBase::Type::Geopairing;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.payload = request.payload();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.payload = request.payload;
|
||||
|
||||
m_ftsTab->sendGeopairingDataReply(cookie, fillFro(request.participantId(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendGeopairingDataReply(cookie, fillFro(request.participantId, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendTargetDataRequest(const rti::core::SampleIdentity &cookie, const SendTargetDataRequest &request)
|
||||
{
|
||||
TetraIcd::OpaquePayloadDataOut data;
|
||||
data.payloadType = TetraIcd::OpaquePayloadDataBase::Type::Target;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.payload = request.payload();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.payload = request.payload;
|
||||
|
||||
m_ftsTab->sendTargetDataReply(cookie, fillFro(request.participantId(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendTargetDataReply(cookie, fillFro(request.participantId, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendCesHitInformationRequest(const rti::core::SampleIdentity &cookie, const SendCesHitInformation &request)
|
||||
{
|
||||
TetraIcd::CesHitInformation data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.header.timeStamp = request.effectTime();
|
||||
data.originatorEquipmentNumber = request.originatorEquipmentNumber();
|
||||
const auto &ct = m_mainHandler->pdmHandler()->chargeTypeFromId(request.chargeTypeId());
|
||||
data.chargeTasCodeDirect = ct.id();
|
||||
data.chargeTasCodeIndirect = ct.id();
|
||||
data.directionDegree = request.directionDegree();
|
||||
data.distance = request.distanceToOrignator();
|
||||
data.effectPercent = request.effectPercent();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.header.timeStamp = request.effectTime;
|
||||
data.originatorEquipmentNumber = request.originatorEquipmentNumber;
|
||||
const auto &ct = m_mainHandler->pdmHandler()->chargeTypeFromId(request.chargeTypeId);
|
||||
data.chargeTasCodeDirect = ct.id;
|
||||
data.chargeTasCodeIndirect = ct.id;
|
||||
data.directionDegree = request.directionDegree;
|
||||
data.distance = request.distanceToOrignator;
|
||||
data.effectPercent = request.effectPercent;
|
||||
|
||||
m_ftsTab->sendCesHitInformationReply(cookie, fillFro(request.participantId(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendCesHitInformationReply(cookie, fillFro(request.participantId, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendCesHitRequest(const rti::core::SampleIdentity &cookie, const SendCesHitRequest &request)
|
||||
{
|
||||
DEBUG_LOG(m_logger) << "onSendCesHitRequest: " << request.equipmentNumber() << " - " << request.effectTime()
|
||||
<< " request.chargeTypeId=" << request.chargeTypeId()
|
||||
<< " request.eventType()=" << request.eventType()
|
||||
<< " request.aesId()=" << request.aesId()
|
||||
<< " aesTypeFromId=" << m_mainHandler->aesHandler()->aesTypeFromId(request.aesId());
|
||||
DEBUG_LOG(m_logger) << "onSendCesHitRequest: " << request.equipmentNumber << " - " << request.effectTime
|
||||
<< " request.chargeTypeId=" << request.chargeTypeId
|
||||
<< " request.pdmEventType=" << request.pdmEventType
|
||||
<< " request.aesId()=" << request.aesId
|
||||
<< " aesTypeFromId=" << m_mainHandler->aesHandler()->aesTypeFromId(request.aesId);
|
||||
|
||||
// NOTE: igniterType/IgniterFunciton = 0 as long as SendCesHitRequest does not contain values
|
||||
if (m_mainHandler->pdmHandler()->isSmartChargeType({request.chargeTypeId(), 0,0}))
|
||||
if (m_mainHandler->pdmHandler()->isSmartChargeType({request.chargeTypeId, 0,0}))
|
||||
{
|
||||
// special handling for smart - must be send as singleFire
|
||||
m_ftsTab->sendCesHitReply(cookie,
|
||||
fillFro(request.participantId(),
|
||||
fillFro(request.participantId,
|
||||
m_mainHandler->aesHandler()->sendSingleFireSMArt(request)));
|
||||
return;
|
||||
}
|
||||
TetraIcd::CesHitRequest data;
|
||||
//test
|
||||
data.reserve2 = request.originatorEquipmentNumber();
|
||||
data.reserve1 = request.chargeTypeId();
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.header.timeStamp = request.effectTime();
|
||||
const auto &ct = m_mainHandler->pdmHandler()->chargeTypeFromId(request.chargeTypeId());
|
||||
data.reserve2 = request.originatorEquipmentNumber;
|
||||
data.reserve1 = request.chargeTypeId;
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.header.timeStamp = request.effectTime;
|
||||
const auto &ct = m_mainHandler->pdmHandler()->chargeTypeFromId(request.chargeTypeId);
|
||||
// GUEZE-359 Steilfeuer mit Sekundaerwirkung wird als Mun 371, ... gesendet. Fuehrt zu Treffer DUS statt WirkSim
|
||||
//#ifdef GUEZ_MODE
|
||||
// if ( request.chargeTypeId() > 370 && request.chargeTypeId() < 390 )
|
||||
@@ -288,78 +288,78 @@ void RecvFromDdsFts::onSendCesHitRequest(const rti::core::SampleIdentity &cookie
|
||||
// data.chargeTasCodeIndirect = ct.id();
|
||||
// }
|
||||
//#else
|
||||
if ((request.eventType() == ProjectDataManagement::EventType::HitBuilding) && (ct.legacyId() > 0))
|
||||
if ((request.pdmEventType == ProjectDataManagement::PdmEventType::EventType_HitBuilding) && (ct.legacyId > 0))
|
||||
{
|
||||
data.chargeTasCodeDirect = 201; // immer den direkten code (fuer wirkfelder: pseudo-osag code >= 201)
|
||||
data.chargeTasCodeIndirect = 201;
|
||||
}
|
||||
else if (ct.legacyId() > 0)
|
||||
else if (ct.legacyId > 0)
|
||||
{
|
||||
data.chargeTasCodeDirect = ct.legacyId();
|
||||
data.chargeTasCodeIndirect = ct.legacyId();
|
||||
data.chargeTasCodeDirect = ct.legacyId;
|
||||
data.chargeTasCodeIndirect = ct.legacyId;
|
||||
}
|
||||
else
|
||||
{
|
||||
data.chargeTasCodeDirect = ct.id();
|
||||
data.chargeTasCodeIndirect = ct.id();
|
||||
data.chargeTasCodeDirect = ct.id;
|
||||
data.chargeTasCodeIndirect = ct.id;
|
||||
}
|
||||
//#endif
|
||||
data.mineId = request.mineId();
|
||||
if (request.aesId() != 0)
|
||||
data.mineId = request.mineId;
|
||||
if (request.aesId != 0)
|
||||
{
|
||||
//data.aesTetraIdUnused = m_mainHandler->aesHandler()->tetraIdFromDdsId(request.aesId());
|
||||
data.aesDdsId = request.aesId();
|
||||
data.aesDdsId = request.aesId;
|
||||
//TODO: !!!!!! Use new EventType to check which AreaEffectSimulationType will be chosen.
|
||||
if (request.eventType() == ProjectDataManagement::EventType::ExplosionCluster)
|
||||
if (request.pdmEventType == ProjectDataManagement::PdmEventType::EventType_ExplosionCluster)
|
||||
data.aesType = TetraIcd::AreaEffectSimulationType::ExplosionArea;
|
||||
else
|
||||
data.aesType = m_mainHandler->aesHandler()->aesTypeFromId(request.aesId());
|
||||
data.aesType = m_mainHandler->aesHandler()->aesTypeFromId(request.aesId);
|
||||
/*!
|
||||
\brief Take the new event type attribute to check if its is a HazardArea(DangerZone/Gefahrenbereich)
|
||||
*
|
||||
* */
|
||||
|
||||
if ((request.eventType() == ProjectDataManagement::EventType::LeaveHazardDistance) ||
|
||||
(request.eventType() == ProjectDataManagement::EventType::EnterHazardDistance))
|
||||
if ((request.pdmEventType == ProjectDataManagement::PdmEventType::EventType_LeaveHazardDistance) ||
|
||||
(request.pdmEventType == ProjectDataManagement::PdmEventType::EventType_EnterHazardDistance))
|
||||
{
|
||||
INFO_LOG(m_logger) << "HarzardArea: " << request.effectTime();
|
||||
data.reserve1 = request.mineId();
|
||||
INFO_LOG(m_logger) << "HarzardArea: " << request.effectTime;
|
||||
data.reserve1 = request.mineId;
|
||||
data.aesType = TetraIcd::AreaEffectSimulationType::DangerZoneExplosion;
|
||||
}
|
||||
else if (request.eventType() == ProjectDataManagement::EventType::AirSupport)
|
||||
else if (request.pdmEventType == ProjectDataManagement::PdmEventType::EventType_AirSupport)
|
||||
{
|
||||
data.aesType = TetraIcd::AreaEffectSimulationType::AirSupport;
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
data.originatorEquipmentNumber = request.originatorEquipmentNumber();
|
||||
const auto &tabPos = request.position();
|
||||
data.buildingId = tabPos.moutObjectId().is_set() ? tabPos.moutObjectId().get() : 0;
|
||||
data.roomId = tabPos.moutRoomId().is_set() ? tabPos.moutRoomId().get() : 0;
|
||||
data.remainEffectPercent = request.remainEffectPercent();
|
||||
data.relPosition = m_mainHandler->posHandler()->geographicToRelative(tabPos.position());
|
||||
data.originatorEquipmentNumber = request.originatorEquipmentNumber;
|
||||
const auto &tabPos = request.position;
|
||||
data.buildingId = tabPos.moutObjectId.is_set() ? tabPos.moutObjectId.get() : 0;
|
||||
data.roomId = tabPos.moutRoomId.is_set() ? tabPos.moutRoomId.get() : 0;
|
||||
data.remainEffectPercent = request.remainEffectPercent;
|
||||
data.relPosition = m_mainHandler->posHandler()->geographicToRelative(tabPos.position);
|
||||
|
||||
// NOTE: igniterType/IgniterFunciton = 0 as long as SendCesHitRequest does not contain values
|
||||
if (m_mainHandler->pdmHandler()->isSmartChargeType({request.chargeTypeId(),0,0}))
|
||||
data.remainEffectTasCodeDirect = calculateRemainEffectTasCode(ct.id(), request.remainEffectPercent());
|
||||
else if ((request.eventType() == ProjectDataManagement::EventType::HitBuilding) ||
|
||||
(request.eventType() == ProjectDataManagement::EventType::HitEffectSimulation) // GUEZE-2873 / GUEZE-2888
|
||||
if (m_mainHandler->pdmHandler()->isSmartChargeType({request.chargeTypeId,0,0}))
|
||||
data.remainEffectTasCodeDirect = calculateRemainEffectTasCode(ct.id, request.remainEffectPercent);
|
||||
else if ((request.pdmEventType == ProjectDataManagement::PdmEventType::EventType_HitBuilding) ||
|
||||
(request.pdmEventType == ProjectDataManagement::PdmEventType::EventType_HitEffectSimulation) // GUEZE-2873 / GUEZE-2888
|
||||
) //Gebäude Sekudärwirkung
|
||||
{
|
||||
data.remainEffectTasCodeDirect = calculateRemainEffectTasCode(ct.id(), request.remainEffectPercent());
|
||||
DEBUG_LOG(m_logger) << "PDM::EventType = " << request.eventType()
|
||||
<< " equipmentNumber=" << request.equipmentNumber()
|
||||
data.remainEffectTasCodeDirect = calculateRemainEffectTasCode(ct.id, request.remainEffectPercent);
|
||||
DEBUG_LOG(m_logger) << "PDM::EventType = " << request.pdmEventType
|
||||
<< " equipmentNumber=" << request.equipmentNumber
|
||||
<< " originatorEquipmentNumber=" << data.originatorEquipmentNumber
|
||||
<< " chargeType=" << ct.id()
|
||||
<< " remainEffectPercent()=" << request.remainEffectPercent()
|
||||
<< " chargeType=" << ct.id
|
||||
<< " remainEffectPercent()=" << request.remainEffectPercent
|
||||
<< " -> remainEffectTasCodeDirect=" << data.remainEffectTasCodeDirect ;
|
||||
}
|
||||
else
|
||||
data.remainEffectTasCodeDirect = request.remainEffectPercent();//calculateRemainEffectTasCode(ct.id(), request.remainEffectPercent());
|
||||
data.remainEffectTasCodeDirect = request.remainEffectPercent;//calculateRemainEffectTasCode(ct.id(), request.remainEffectPercent());
|
||||
|
||||
// [GUEZE-3469] Funktionsraum dekontaminiert faelschlicherweise
|
||||
if (m_mainHandler->aesHandler()->aesTypeFromId(request.aesId()) == TetraIcd::AreaEffectSimulationType::FunctionalArea)
|
||||
if (m_mainHandler->aesHandler()->aesTypeFromId(request.aesId) == TetraIcd::AreaEffectSimulationType::FunctionalArea)
|
||||
{
|
||||
// GUEZSB60_ICD_52_Zentrale-TNE
|
||||
// 3.3.2.5.9.6 Trefferereignis Sekundärwirkung
|
||||
@@ -370,39 +370,39 @@ void RecvFromDdsFts::onSendCesHitRequest(const rti::core::SampleIdentity &cookie
|
||||
// Feld Reserve1: Betriebsmodus (MS-Byte) / Wartezeit (LS-Byte) für Instandsetzungsmaßnahmen
|
||||
// Feld Reserve2: Betriebsmodus (MS-Byte) / Wartezeit (LS-Byte) für San.-dienstliche Versorgung
|
||||
|
||||
AreaEffectSimulation::FunctionalArea fa = m_mainHandler->aesHandler()->dtcAes()->functionalArea(request.aesId());
|
||||
DEBUG_LOG(m_logger) << "fa maintMode=" << fa.maintMode()
|
||||
<< " maintTime=" <<fa.maintTime()
|
||||
<< " deconMode=" << fa.deconMode()
|
||||
<< " deconTime=" << fa.deconTime()
|
||||
<< " medicMode=" << fa.medicMode()
|
||||
<< " medicTime=" << fa.medicTime();
|
||||
AreaEffectSimulation::FunctionalArea fa = m_mainHandler->aesHandler()->dtcAes()->functionalArea(request.aesId);
|
||||
DEBUG_LOG(m_logger) << "fa maintMode=" << fa.maintMode
|
||||
<< " maintTime=" <<fa.maintTime
|
||||
<< " deconMode=" << fa.deconMode
|
||||
<< " deconTime=" << fa.deconTime
|
||||
<< " medicMode=" << fa.medicMode
|
||||
<< " medicTime=" << fa.medicTime;
|
||||
|
||||
data.chargeTasCodeDirect = 0;
|
||||
data.reserve1 = 0;
|
||||
data.reserve2 = 0;
|
||||
if (fa.deconMode() == AreaEffectSimulation::AesOperatingMode_def::OmWaitingTime)
|
||||
if (fa.deconMode == AreaEffectSimulation::AesOperatingMode::OmWaitingTime)
|
||||
{
|
||||
qint32 msb = AreaEffectSimulation::AesOperatingMode_def::OmWaitingTime << 8;
|
||||
qint32 lsb = fa.deconTime() / 1000 / 60 / 10; // dissolution in 10 minute steps
|
||||
qint32 msb = static_cast<qint32>(AreaEffectSimulation::AesOperatingMode::OmWaitingTime) << 8;
|
||||
qint32 lsb = fa.deconTime / 1000 / 60 / 10; // dissolution in 10 minute steps
|
||||
data.chargeTasCodeIndirect = msb | lsb;
|
||||
DEBUG_LOG(m_logger) << "deconMode: remainEffectTasCodeDirect=" << data.chargeTasCodeIndirect
|
||||
<< " msb=" << msb
|
||||
<< " lsb=" << lsb;
|
||||
}
|
||||
if (fa.maintMode() == AreaEffectSimulation::AesOperatingMode_def::OmWaitingTime)
|
||||
if (fa.maintMode == AreaEffectSimulation::AesOperatingMode::OmWaitingTime)
|
||||
{
|
||||
qint32 msb = AreaEffectSimulation::AesOperatingMode_def::OmWaitingTime << 8;
|
||||
qint32 lsb = fa.maintTime() / 1000 / 60 / 10; // dissolution in 10 minute steps
|
||||
qint32 msb = static_cast<qint32>(AreaEffectSimulation::AesOperatingMode::OmWaitingTime) << 8;
|
||||
qint32 lsb = fa.maintTime / 1000 / 60 / 10; // dissolution in 10 minute steps
|
||||
data.reserve1 = msb | lsb;
|
||||
DEBUG_LOG(m_logger) << "maintMode: reserve1=" << data.reserve1
|
||||
<< " msb=" << msb
|
||||
<< " lsb=" << lsb;
|
||||
}
|
||||
if (fa.medicMode() == AreaEffectSimulation::AesOperatingMode_def::OmWaitingTime)
|
||||
if (fa.medicMode == AreaEffectSimulation::AesOperatingMode::OmWaitingTime)
|
||||
{
|
||||
qint32 msb = AreaEffectSimulation::AesOperatingMode_def::OmWaitingTime << 8;
|
||||
qint32 lsb = fa.medicTime() / 1000 / 60 / 10; // dissolution in 10 minute steps
|
||||
qint32 msb = static_cast<qint32>(AreaEffectSimulation::AesOperatingMode::OmWaitingTime) << 8;
|
||||
qint32 lsb = fa.medicTime / 1000 / 60 / 10; // dissolution in 10 minute steps
|
||||
data.reserve2 = msb | lsb;
|
||||
DEBUG_LOG(m_logger) << "medicMode: reserve2=" << data.reserve2
|
||||
<< " msb=" << msb
|
||||
@@ -410,130 +410,130 @@ void RecvFromDdsFts::onSendCesHitRequest(const rti::core::SampleIdentity &cookie
|
||||
}
|
||||
}
|
||||
|
||||
m_ftsTab->sendCesHitReply(cookie, fillFro(request.participantId(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendCesHitReply(cookie, fillFro(request.participantId, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendParticipantSwVerionsRequest(const rti::core::SampleIdentity &cookie, const SendParticipantSwVerionsRequest &request)
|
||||
{
|
||||
DEBUG_LOG(m_logger) << "onSendParticipantSwVerionsRequest: " << request.equipmentNumber() << " - " << request.equipmentFunctionId();
|
||||
DEBUG_LOG(m_logger) << "onSendParticipantSwVerionsRequest: " << request.equipmentNumber << " - " << request.equipmentFunctionId;
|
||||
|
||||
TetraIcd::ParticipantSwVersionsRequest data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.equipmentFunctionId = request.equipmentFunctionId();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.equipmentFunctionId = request.equipmentFunctionId;
|
||||
|
||||
m_ftsTab->sendParticipantSwVerionsReply(cookie, fillFro(request.equipmentNumber(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendParticipantSwVerionsReply(cookie, fillFro(request.equipmentNumber, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendParticipantModeRequest(const rti::core::SampleIdentity &cookie, const SendParticipantModeRequest &request)
|
||||
{
|
||||
TetraIcd::ParticipantMode data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.language = static_cast<TetraIcd::Language>(request.language().underlying());
|
||||
data.operationMode = static_cast<TetraIcd::ParticipantMode::OperationMode>(request.operationMode().underlying());
|
||||
data.reactivationDetoxication = request.reactivationDetoxication();
|
||||
data.reactivationMaintenance = request.reactivationMaintenance();
|
||||
data.reactivationMedic = request.reactivationMedic();
|
||||
data.modeVest = static_cast<TetraIcd::ParticipantMode::WphMode>(request.protectionModeVest().underlying());
|
||||
data.modeHelmet = static_cast<TetraIcd::ParticipantMode::WphMode>(request.protectionModeHelmet().underlying());
|
||||
data.personellProtectionMode = static_cast<TetraIcd::ParticipantMode::PersonellProtection>(request.personellProtection().underlying());
|
||||
data.protectionLevel = static_cast<TetraIcd::ParticipantMode::ProtectionLevel>(request.protectionLevel().underlying());
|
||||
data.handgrenadeSearchMode = static_cast<TetraIcd::ParticipantMode::HandgrenadeSearchMode>(request.handgrenadeSearchMode().underlying());
|
||||
data.internationalMode = static_cast<TetraIcd::ParticipantMode::InternationalMode>(request.internationalMode().underlying());
|
||||
data.abcProtectionMode = static_cast<TetraIcd::ParticipantMode::ABCProtectionMode>(request.abcProtectionMode().underlying());
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.language = static_cast<TetraIcd::Language>(request.language);
|
||||
data.operationMode = static_cast<TetraIcd::ParticipantMode::OperationMode>(request.operationMode);
|
||||
data.reactivationDetoxication = request.reactivationDetoxication;
|
||||
data.reactivationMaintenance = request.reactivationMaintenance;
|
||||
data.reactivationMedic = request.reactivationMedic;
|
||||
data.modeVest = static_cast<TetraIcd::ParticipantMode::WphMode>(request.protectionModeVest);
|
||||
data.modeHelmet = static_cast<TetraIcd::ParticipantMode::WphMode>(request.protectionModeHelmet);
|
||||
data.personellProtectionMode = static_cast<TetraIcd::ParticipantMode::PersonellProtection>(request.personellProtection);
|
||||
data.protectionLevel = static_cast<TetraIcd::ParticipantMode::ProtectionLevel>(request.protectionLevel);
|
||||
data.handgrenadeSearchMode = static_cast<TetraIcd::ParticipantMode::HandgrenadeSearchMode>(request.handgrenadeSearchMode);
|
||||
data.internationalMode = static_cast<TetraIcd::ParticipantMode::InternationalMode>(request.internationalMode);
|
||||
data.abcProtectionMode = static_cast<TetraIcd::ParticipantMode::ABCProtectionMode>(request.abcProtectionMode);
|
||||
|
||||
m_ftsTab->sendParticipantModeReply(cookie, fillFro(request.requestId(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendParticipantModeReply(cookie, fillFro(request.requestId, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onDemandParticipantModeRequest(const rti::core::SampleIdentity &cookie, const DemandParticipantModeRequest &request)
|
||||
{
|
||||
TetraIcd::DemandParticipantMode data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
|
||||
m_ftsTab->demandParticipantModeReply(cookie, fillFro(request.equipmentNumber(), m_txCallback->txData(data)));
|
||||
m_ftsTab->demandParticipantModeReply(cookie, fillFro(request.equipmentNumber, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendParticipantConfigurationRequest(const rti::core::SampleIdentity &cookie, const SendParticipantConfigurationRequest &request)
|
||||
{
|
||||
TetraIcd::ParticipantConfiguration data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
// positioning
|
||||
data.positionIntervallVehicle = request.positionIntervallVehicle();
|
||||
data.positionIntervallPersonell = request.positionIntervallPersonell();
|
||||
data.positionIntervallAircraft = request.positionIntervallAircraft();
|
||||
data.positionTransmissionIntervall = request.positionTransmissionIntervall();
|
||||
data.heightbarrier = request.heightbarrier();
|
||||
data.faultPositionHandling = static_cast<TetraIcd::ParticipantConfiguration::FaultPositionHandling>(request.faultPositionHandling().underlying());
|
||||
data.switchingPositionIntervall = static_cast<TetraIcd::ParticipantConfiguration::SwitchingPositionIntervall>(request.switchingPositionIntervall().underlying());
|
||||
data.positionIntervallVehicle = request.positionIntervallVehicle;
|
||||
data.positionIntervallPersonell = request.positionIntervallPersonell;
|
||||
data.positionIntervallAircraft = request.positionIntervallAircraft;
|
||||
data.positionTransmissionIntervall = request.positionTransmissionIntervall;
|
||||
data.heightbarrier = request.heightbarrier;
|
||||
data.faultPositionHandling = static_cast<TetraIcd::ParticipantConfiguration::FaultPositionHandling>(request.faultPositionHandling);
|
||||
data.switchingPositionIntervall = static_cast<TetraIcd::ParticipantConfiguration::SwitchingPositionIntervall>(request.switchingPositionIntervall);
|
||||
// radio protocoll parameter
|
||||
data.waittimeAdditionalBroadcastDemand = request.waittimeAdditionalBroadcastDemand();
|
||||
data.factorWaittimeIncreaseAtHighload = request.factorWaittimeIncreaseHighload();
|
||||
data.waittimeAdditionalBroadcastDemand = request.waittimeAdditionalBroadcastDemand;
|
||||
data.factorWaittimeIncreaseAtHighload = request.factorWaittimeIncreaseHighload;
|
||||
// automatic vulnerability increase
|
||||
data.waittimeAutomaticVulnerabilityIncreaseLevel1 = request.waittimeAutomaticVulnerabilityIncreaseLevel1();
|
||||
data.waittimeAutomaticVulnerabilityIncreaseLevel2 = request.waittimeAutomaticVulnerabilityIncreaseLevel2();
|
||||
data.waittimeAutomaticVulnerabilityIncreaseLevel3 = request.waittimeAutomaticVulnerabilityIncreaseLevel3();
|
||||
data.waittimeAutomaticVulnerabilityIncreaseLevel1 = request.waittimeAutomaticVulnerabilityIncreaseLevel1;
|
||||
data.waittimeAutomaticVulnerabilityIncreaseLevel2 = request.waittimeAutomaticVulnerabilityIncreaseLevel2;
|
||||
data.waittimeAutomaticVulnerabilityIncreaseLevel3 = request.waittimeAutomaticVulnerabilityIncreaseLevel3;
|
||||
// optical code
|
||||
data.opticalCode = static_cast<TetraIcd::ParticipantConfiguration::OpticalCode>(request.opticalCode().underlying());
|
||||
data.opticalCode = static_cast<TetraIcd::ParticipantConfiguration::OpticalCode>(request.opticalCode);
|
||||
// vulnerability model
|
||||
data.vulnerabilityModel = request.vulnerabilityModel();
|
||||
data.validTimeOps = request.validTimeOps();
|
||||
data.vulnerabilityModel = request.vulnerabilityModel;
|
||||
data.validTimeOps = request.validTimeOps;
|
||||
|
||||
m_ftsTab->sendParticipantConfigurationReply(cookie, fillFro(request.equipmentNumber(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendParticipantConfigurationReply(cookie, fillFro(request.equipmentNumber, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendParticipantBlockedAreaRequest(const rti::core::SampleIdentity &cookie, const SendParticipantBlockedAreaRequest &request)
|
||||
{
|
||||
TetraIcd::CesHitRequest data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.header.timeStamp = QDateTime::currentMSecsSinceEpoch(); // TODO
|
||||
data.aesType = TetraIcd::AreaEffectSimulationType::SpecialArea;
|
||||
data.remainEffectPercent = request.blockedAreaMode() == BlockedAreaMode::Enter ? 1 : 0;
|
||||
data.remainEffectPercent = request.blockedAreaMode == BlockedAreaMode::Enter ? 1 : 0;
|
||||
|
||||
m_ftsTab->sendParticipantBlockedAreaReply(cookie, fillFro(request.equipmentNumber(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendParticipantBlockedAreaReply(cookie, fillFro(request.equipmentNumber, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendParticipantBeStillWarningRequest(const rti::core::SampleIdentity &cookie, const SendParticipantBeStillWarningRequest &request)
|
||||
{
|
||||
TetraIcd::CesHitRequest data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.header.timeStamp = QDateTime::currentMSecsSinceEpoch(); // TODO
|
||||
data.aesType = TetraIcd::AreaEffectSimulationType::BeStillWarning;
|
||||
data.remainEffectPercent = 0;
|
||||
|
||||
WARNING_LOG(m_logger) << "sendParticipantBeStillWarningReply equipmentNumber=" << request.equipmentNumber();
|
||||
m_ftsTab->sendParticipantBeStillWarningReply(cookie, fillFro(request.equipmentNumber(), m_txCallback->txData(data)));
|
||||
WARNING_LOG(m_logger) << "sendParticipantBeStillWarningReply equipmentNumber=" << request.equipmentNumber;
|
||||
m_ftsTab->sendParticipantBeStillWarningReply(cookie, fillFro(request.equipmentNumber, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendSetSanitationRequest(const rti::core::SampleIdentity &cookie, const SendSetSanitationRequest &request)
|
||||
{
|
||||
TetraIcd::Sanitation data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.header.timeStamp = QDateTime::currentMSecsSinceEpoch();
|
||||
data.proceduresTaken = request.sanitationProceduresTaken();
|
||||
data.proceduresTaken = request.sanitationProceduresTaken;
|
||||
data.sanitationResult = TetraIcd::SanitationResult::NoEffect;
|
||||
data.sanitationEvaluation = TetraIcd::SanitationEvaluation::Okay; // To have a 0 for TETRA
|
||||
data.uniqeId = 0;
|
||||
data.originatorEquipmentNumber = request.originatorEquipmentNumber();
|
||||
data.qualification = static_cast<TetraIcd::Qualification>(request.qualification().underlying());
|
||||
m_ftsTab->sendSetSanitationReply(cookie, fillFro(request.equipmentNumber(), m_txCallback->txData(data)));
|
||||
data.originatorEquipmentNumber = request.originatorEquipmentNumber;
|
||||
data.qualification = static_cast<TetraIcd::Qualification>(request.qualification);
|
||||
m_ftsTab->sendSetSanitationReply(cookie, fillFro(request.equipmentNumber, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendSelectiveReammunitionRequest(const rti::core::SampleIdentity &cookie, const SendSelectiveReammunitionRequest &request)
|
||||
{
|
||||
DEBUG_LOG(m_logger) << "onSendSelectiveReammunitionRequest for equipment number: " << request.equipmentNumber();
|
||||
DEBUG_LOG(m_logger) << "onSendSelectiveReammunitionRequest for equipment number: " << request.equipmentNumber;
|
||||
TetraIcd::SelectiveReammunition data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.header.timeStamp = QDateTime::currentMSecsSinceEpoch();
|
||||
data.gearId = request.gearId();
|
||||
for(auto ra : request.reammunition())
|
||||
data.gearId = request.gearId;
|
||||
for(auto ra : request.reammunition)
|
||||
{
|
||||
TetraIcd::Reammunition tra;
|
||||
tra.chargeTypeId = ra.chargeTypeId();
|
||||
tra.newDefaultStock = ra.newDefaultStock();
|
||||
tra.newStock = ra.newStock();
|
||||
tra.tracerRatio = ra.tracerRatio();
|
||||
tra.chargeTypeId = ra.chargeTypeId;
|
||||
tra.newDefaultStock = ra.newDefaultStock;
|
||||
tra.newStock = ra.newStock;
|
||||
tra.tracerRatio = ra.tracerRatio;
|
||||
data.reammunitions.push_back(tra);
|
||||
}
|
||||
m_ftsTab->sendSelectiveReammunitionReply(cookie, fillFro(request.equipmentNumber(), m_txCallback->txData(data)));
|
||||
m_ftsTab->sendSelectiveReammunitionReply(cookie, fillFro(request.equipmentNumber, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendResetAllDusMinesRequest(const rti::core::SampleIdentity &cookie, const SendResetAllDusMinesRequest &request)
|
||||
@@ -549,20 +549,20 @@ void RecvFromDdsFts::onSendResetAllDusMinesRequest(const rti::core::SampleIdenti
|
||||
void RecvFromDdsFts::onDemandParticipantConfigurationRequest(const rti::core::SampleIdentity &cookie, const DemandParticipantConfigurationRequest &request)
|
||||
{
|
||||
TetraIcd::DemandParticipantConfiguration data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
|
||||
m_ftsTab->demandParticipantConfigurationReply(cookie, fillFro(request.equipmentNumber(), m_txCallback->txData(data)));
|
||||
m_ftsTab->demandParticipantConfigurationReply(cookie, fillFro(request.equipmentNumber, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSetDevicePowerRequest(const rti::core::SampleIdentity &cookie, const SetDevicePowerRequest &request)
|
||||
{
|
||||
TetraIcd::SetDevicePowerRequest data;
|
||||
data.header.equipmentNumber = request.equipmentNumber();
|
||||
data.header.equipmentNumber = request.equipmentNumber;
|
||||
data.header.timeStamp = QDateTime::currentMSecsSinceEpoch();
|
||||
data.powerType = static_cast<TetraIcd::PowerMethod>(request.powerType().underlying());
|
||||
data.subdeviceId = request.subdeviceId();
|
||||
data.powerType = static_cast<TetraIcd::PowerMethod>(request.powerType);
|
||||
data.subdeviceId = request.subdeviceId;
|
||||
|
||||
m_ftsTab->setDevicePowerReply(cookie, fillFro(request.equipmentNumber(), m_txCallback->txData(data)));
|
||||
m_ftsTab->setDevicePowerReply(cookie, fillFro(request.equipmentNumber, m_txCallback->txData(data)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onAdlerCalculateTrajectoryRequest(const rti::core::SampleIdentity &cookie, const AdlerCalculateTrajectoryRequest &request)
|
||||
@@ -574,30 +574,30 @@ void RecvFromDdsFts::onAdlerCalculateTrajectoryRequest(const rti::core::SampleId
|
||||
void RecvFromDdsFts::onSendOcCommandRequest(const rti::core::SampleIdentity &cookie, const SendOcCommandRequest &request)
|
||||
{
|
||||
TetraIcd::OcCommand data;
|
||||
data.action = request.action();
|
||||
data.action = request.action;
|
||||
|
||||
bool bRet = true;
|
||||
|
||||
for (const int equipNo : request.equipmentNumbers())
|
||||
for (const int equipNo : request.equipmentNumbers)
|
||||
{
|
||||
data.header.equipmentNumber = equipNo;
|
||||
if (!m_txCallback->txData(data))
|
||||
bRet = false;
|
||||
}
|
||||
|
||||
m_ftsTab->sendOcCommandReply(cookie, fillFro(request.requestId(), bRet));
|
||||
m_ftsTab->sendOcCommandReply(cookie, fillFro(request.requestId, bRet));
|
||||
}
|
||||
|
||||
|
||||
void RecvFromDdsFts::onSendUasWaypointRequest(const rti::core::SampleIdentity &cookie, const SendUasWaypointRequest &request)
|
||||
{
|
||||
TetraIcd::UAVPerformMission mission;
|
||||
mission.header.equipmentNumber = request.equipmentNumber();
|
||||
mission.header.equipmentNumber = request.equipmentNumber;
|
||||
mission.header.timeStamp = QDateTime::currentMSecsSinceEpoch();
|
||||
mission.missionName = QString::fromStdString(request.name());
|
||||
mission.missionId = request.planId();
|
||||
mission.missionName = QString::fromStdString(request.name);
|
||||
mission.missionId = request.planId;
|
||||
|
||||
ERROR_LOG(m_logger) << "####################### request.equipmentNumber(): " << request.equipmentNumber() << ", request.name(): " << request.name() << ", mission.header.equipmentNumber: " << mission.header.equipmentNumber << ", properties: " << request.properties();
|
||||
ERROR_LOG(m_logger) << "####################### request.equipmentNumber(): " << request.equipmentNumber << ", request.name(): " << request.name << ", mission.header.equipmentNumber: " << mission.header.equipmentNumber << ", properties: " << request.properties;
|
||||
|
||||
TetraIcd::UAVAction action;
|
||||
action.task = TetraIcd::UAVActionTask::Loiter;
|
||||
@@ -610,7 +610,7 @@ void RecvFromDdsFts::onSendUasWaypointRequest(const rti::core::SampleIdentity &c
|
||||
|
||||
try
|
||||
{
|
||||
const auto props = LtsUtils::JsonObject::fromJsonSafe(request.properties());
|
||||
const auto props = LtsUtils::JsonObject::fromJsonSafe(request.properties);
|
||||
|
||||
lat = props.value<double>("location_y");
|
||||
lon = props.value<double>("location_x");
|
||||
@@ -619,7 +619,7 @@ void RecvFromDdsFts::onSendUasWaypointRequest(const rti::core::SampleIdentity &c
|
||||
catch (const std::exception &ex)
|
||||
{
|
||||
ERROR_LOG(m_logger) << "props is missing critical values: " << ex.what();
|
||||
m_ftsTab->sendUasWaypointReply(cookie, fillFro(request.equipmentNumber(), false));
|
||||
m_ftsTab->sendUasWaypointReply(cookie, fillFro(request.equipmentNumber, false));
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -630,16 +630,16 @@ void RecvFromDdsFts::onSendUasWaypointRequest(const rti::core::SampleIdentity &c
|
||||
mission.actions.push_back(action);
|
||||
|
||||
bool ret = m_txCallback->txData(mission); // send waypoint to uav via uas tab plugin
|
||||
m_ftsTab->sendUasWaypointReply(cookie, fillFro(request.equipmentNumber(), ret));
|
||||
m_ftsTab->sendUasWaypointReply(cookie, fillFro(request.equipmentNumber, ret));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendModifyUasStateRequest(const rti::core::SampleIdentity &cookie, const SendModifyUasStateRequest &request)
|
||||
{
|
||||
TetraIcd::UAVChangeState changeState;
|
||||
changeState.header.equipmentNumber = request.equipmentNumber();
|
||||
changeState.header.equipmentNumber = request.equipmentNumber;
|
||||
changeState.header.timeStamp = QDateTime::currentMSecsSinceEpoch();
|
||||
changeState.requestedState = static_cast<TetraIcd::UAVState>(request.uasState().underlying());
|
||||
m_ftsTab->sendModifyUasStateReply(cookie, fillFro(request.equipmentNumber(), m_txCallback->txData(changeState)));
|
||||
changeState.requestedState = static_cast<TetraIcd::UAVState>(request.uasState);
|
||||
m_ftsTab->sendModifyUasStateReply(cookie, fillFro(request.equipmentNumber, m_txCallback->txData(changeState)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendExFireReadinessRequest(const rti::core::SampleIdentity &cookie, const SendExFireReadinessRequest &request)
|
||||
@@ -647,37 +647,37 @@ void RecvFromDdsFts::onSendExFireReadinessRequest(const rti::core::SampleIdentit
|
||||
TetraIcd::ExFireReadiness fireReadiness;
|
||||
fireReadiness.header.equipmentNumber = 100;
|
||||
fireReadiness.header.timeStamp = QDateTime::currentMSecsSinceEpoch();
|
||||
fireReadiness.partyId = request.partyId();
|
||||
fireReadiness.reference = QString::fromStdString(request.reference());
|
||||
fireReadiness.partyId = request.partyId;
|
||||
fireReadiness.reference = QString::fromStdString(request.reference);
|
||||
|
||||
m_ftsTab->sendExFireReadinessReply(cookie, fillFro(request.participantId(), m_txCallback->txData(fireReadiness)));
|
||||
m_ftsTab->sendExFireReadinessReply(cookie, fillFro(request.participantId, m_txCallback->txData(fireReadiness)));
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendExFiredReportRequest(const rti::core::SampleIdentity &cookie, const SendExFiredReportRequest &request)
|
||||
{
|
||||
TetraIcd::ExFiredReport firedReport;
|
||||
firedReport.header.equipmentNumber = request.participantId();
|
||||
firedReport.header.equipmentNumber = request.participantId;
|
||||
firedReport.header.timeStamp = QDateTime::currentMSecsSinceEpoch();
|
||||
firedReport.partyId = request.partyId();
|
||||
firedReport.reference = QString::fromStdString(request.reference());
|
||||
firedReport.unitIdentifier = QString::fromStdString(request.unitIdentifier());
|
||||
firedReport.identifier = QString::fromStdString(request.identifier());
|
||||
firedReport.partyId = request.partyId;
|
||||
firedReport.reference = QString::fromStdString(request.reference);
|
||||
firedReport.unitIdentifier = QString::fromStdString(request.unitIdentifier);
|
||||
firedReport.identifier = QString::fromStdString(request.identifier);
|
||||
|
||||
m_ftsTab->sendExFiredReportReply(cookie, fillFro(request.participantId(), m_txCallback->txData(firedReport)));
|
||||
m_ftsTab->sendExFiredReportReply(cookie, fillFro(request.participantId, m_txCallback->txData(firedReport)));
|
||||
|
||||
}
|
||||
|
||||
void RecvFromDdsFts::onSendExConfirmationReportRequest(const rti::core::SampleIdentity &cookie, const SendExConfirmationReportRequest &request)
|
||||
{
|
||||
TetraIcd::ExConfirmationReport confirmationReport;
|
||||
confirmationReport.header.equipmentNumber = request.participantId();
|
||||
confirmationReport.header.equipmentNumber = request.participantId;
|
||||
confirmationReport.header.timeStamp = QDateTime::currentMSecsSinceEpoch();
|
||||
confirmationReport.partyId = request.partyId();
|
||||
confirmationReport.reference = QString::fromStdString(request.reference());
|
||||
confirmationReport.unitIdentifier = QString::fromStdString(request.unitIdentifier());
|
||||
confirmationReport.identifier = QString::fromStdString(request.identifier());
|
||||
confirmationReport.partyId = request.partyId;
|
||||
confirmationReport.reference = QString::fromStdString(request.reference);
|
||||
confirmationReport.unitIdentifier = QString::fromStdString(request.unitIdentifier);
|
||||
confirmationReport.identifier = QString::fromStdString(request.identifier);
|
||||
|
||||
m_ftsTab->sendExConfirmationReportReply(cookie, fillFro(request.participantId(), m_txCallback->txData(confirmationReport)));
|
||||
m_ftsTab->sendExConfirmationReportReply(cookie, fillFro(request.participantId, m_txCallback->txData(confirmationReport)));
|
||||
|
||||
}
|
||||
|
||||
@@ -757,7 +757,7 @@ int RecvFromDdsFts::calculateRemainEffectTasCode(int chargeTypeIdBase, int remai
|
||||
if (remainEffectPercent > 100)
|
||||
remainEffectPercent = 100;
|
||||
|
||||
const int destructiveFactor = m_mainHandler->pdmHandler()->buildingChargeEffect(chargeTypeIdBase).destructiveFactor();
|
||||
const int destructiveFactor = m_mainHandler->pdmHandler()->buildingChargeEffect(chargeTypeIdBase).destructiveFactor;
|
||||
const int categorie = getDestructiveCategorie(destructiveFactor);
|
||||
const auto &value = m_categorieData.value(categorie);
|
||||
|
||||
|
||||
Reference in new issue
Block a user