Files
berrux-dev 598fc2560e Complete Qt6 migration: full clean build green across groups G1-G12 incl. runtime plugin set
new_docker_build.sh gains Group 12 (212 GUI/Data plugins); fixes LtsUtilsGuiDds visibility (LTO-stripped exports), LtsProjectionWorkstation unity name shadow, 6 unity-off dirs (dup file-scope statics, ddsftc INTERFACE sources) and reconfigures BUILD_FILTERMANAGEMENT/BUILD_PLUGINS_SERVICEMONITOR=ON
2026-10-20 09:36:57 +02:00

92 lines
2.3 KiB
C++
Executable File

/**
* The Uas class represents a Uas. It holds the data and offers some conversion methods.
* $Id$
* $HeadURL$
* $Author$
* Created by Hannes Fritsche, ESZS, 2025-04-08
*/
#include "uas.h"
namespace ParticipantManagement
{
namespace UasHandling
{
bool Uas::hasChanges(const CreateModifyUasRequest &request)
{
bool hasChanges = request.deviceIdentifier != m_data.deviceIdentifier.toStdString() ||
request.participantId != m_data.participantId ||
request.exerciseId != m_data.exerciseId ||
request.hostname != m_data.hostname.toStdString() ||
request.hostport != m_data.hostport ||
request.useTcp != m_data.useTcp;
if (hasChanges)
{
m_data.deviceIdentifier = QString::fromStdString(request.deviceIdentifier);
m_data.participantId = request.participantId;
m_data.exerciseId = request.exerciseId;
m_data.hostname = QString::fromStdString(request.hostname);
m_data.hostport = request.hostport;
m_data.useTcp = request.useTcp;
}
return hasChanges;
}
bool Uas::compareHostname( const QString &hostname)
{
return (m_data.hostname.compare(hostname, Qt::CaseInsensitive) == 0);
}
bool Uas::compareHostPort(int hostport)
{
return (m_data.hostport == hostport);
}
void Uas::unlinkUas()
{
m_data.participantId = 0;
m_data.exerciseId = 0;
}
void Uas::setState(const ProjectDataManagement::UasState &newState)
{
m_data.uasStateId = static_cast<int>(newState);
}
int32_t Uas::id() const
{
return m_data.id;
}
int32_t Uas::participantId() const
{
return m_data.participantId;
}
Database::PpmUas Uas::toDbUas() const
{
return m_data;
}
UAS Uas::toDdsUas() const
{
ParticipantManagement::UAS result;
result.id = m_data.id;
result.deviceIdentifier = m_data.deviceIdentifier.toStdString();
result.uasState = static_cast<ProjectDataManagement::UasState>(m_data.uasStateId);
result.participantId = m_data.participantId;
result.exerciseId = m_data.exerciseId;
result.hostname = m_data.hostname.toStdString();
result.hostport = m_data.hostport;
result.sampleTime = QDateTime::currentDateTimeUtc().toMSecsSinceEpoch();
result.useTcp = m_data.useTcp;
return result;
}
} // namespace ParticipantManagement
} // namespace UasHandling