Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Lts/Services/EffectShowManagement/esm_convert_from_tab.cpp
T
torstenandCopilot d5af8b9764 Session 026: Lts/Services Qt5:: to Qt6:: migration
- Migrated all 104 CMakeLists.txt files in Lts/Services
- Replaced Qt5::Core, Qt5::Gui, Qt5::Widgets, Qt5::Network, Qt5::Svg,
  Qt5::Concurrent, Qt5::WebSockets, Qt5::Sql, Qt5::Xml, Qt5::Test,
  Qt5::SerialPort with Qt6:: equivalents
- 1244 files modified (CMakeLists.txt and source files)
- Zero Qt5:: references remaining in Lts/Services
- QTextCodec, QDesktopWidget: No blocking issues found
- QRegExp: 7 occurrences remain (deprecated but functional)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-08-25 19:23:30 +02:00

90 lines
2.7 KiB
C++
Executable File

/**
* @RDE_HEADER@
* MeteoDataManagement - Static Meteo Data Edit Dialog
* $Id$
* $HeadURL$
* $Author$
* Created by hjl, SLSE, 2016-10-17
*/
#include "esm_convert_from_tab.h"
#include <LtsUtilsCore/qbytearray_byteaccess.h>
namespace EffectShowManagement
{
namespace ConvertFromTab
{
//=============================================================================
RxTelegram_e isTelegram(const TrainingAreaBase::FireSmokeMarkerData &data)
{
Q_ASSERT(data.payload().size() > 0);
switch (data.payload().at(0))
{
case 120: return RxTelegram_e::OrderConfirmation;
case 121: return RxTelegram_e::VehicleStatus;
}
return (RxTelegram_e::unknown);
}
//=============================================================================
OrderConfirmation_t getOrderConfirmation(const TrainingAreaBase::FireSmokeMarkerData &data)
{
Q_ASSERT(data.payload().size() >= 5);
const QByteArray tele(QByteArray::fromRawData(
reinterpret_cast<const char *>(&data.payload().at(0)),
data.payload().size()));
OrderConfirmation_t res;
size_t k = 1;
quint8 byte;
LtsUtils::get1Byte(tele, k, byte);
res.orderType = OrderType_e(byte);
LtsUtils::get2Byte(tele, k, res.orderId);
LtsUtils::get1Byte(tele, k, byte);
res.confirmation = EffectShowManagement::OrderConfirmation_e::inner_enum(byte);
QByteArray qbArr;
int ie = data.payload().size() - 5;
for (int i = 0; i < ie; ++i)
qbArr.append(data.payload().at(5 + i)); // rationale (text)
res.answerText = QString::fromUtf8(qbArr);
return res;
}
//=============================================================================
VehicleStatus_t getVehicleStatus(const TrainingAreaBase::FireSmokeMarkerData &data)
{
Q_ASSERT(data.payload().size() == 5);
const QByteArray tele(QByteArray::fromRawData(
reinterpret_cast<const char *>(&data.payload().at(0)),
data.payload().size()));
VehicleStatus_t res;
res.equipmentNumber = data.equipmentNumber();
res.timestamp = data.sampleTime();
size_t k = 1;
quint8 byte;
LtsUtils::get1Byte(tele, k, byte);
res.operational = byte != 0;
LtsUtils::get1Byte(tele, k, res.ammunitionMagazine);
LtsUtils::get1Byte(tele, k, res.ammunitionAvailable);
LtsUtils::get1Byte(tele, k, byte);
res.inclinationSensorFail = ((byte & 0x80) != 0);
res.navigationFail = ((byte & 0x40) != 0);
res.airSpeedMeterFail = ((byte & 0x20) != 0);
res.controlComputerFail = ((byte & 0x10) != 0);
res.magazineFail = ((byte & 0x08) != 0);
res.feature = (byte & 0x06) >> 1;
return res;
}
} // namespace ConvertFromTab
} // namespace EffectShowManagement