Adds initial intermediate qt6 porting state

This commit is contained in:
torsten committed 2026-08-17 17:54:56 +02:00
1 parent 99136e9460
commit d176b5e0d7
11247 files changed
+1891537

No files matched your search

@@ -0,0 +1,68 @@
#include "dds_handler.h"
#include <DDS/Core/pacemaker.h>
#include <DDS/DTS/generic_dts_impl.h>
namespace HighLevelArchitecture
{
DdsHandler::DdsHandler(int domainId, int exerciseId)
: m_ddsConnector(new DDSConnector::DdsConnector(domainId, IDL::PartitionType::Exercise, exerciseId))
, m_hlaIsActive(false)
, m_logger(getLogger("DdsHandler"))
{
DEBUG_LOG(m_logger) << "DdsHandler(" << domainId << ") for partition: " << m_ddsConnector->getDefaultPartition();
}
DdsHandler::~DdsHandler()
{
m_dtcExm = nullptr;
m_pacemaker = nullptr;
m_ddsConnector = nullptr;
}
bool DdsHandler::init(const QStringList &qosFileList)
{
if (!m_ddsConnector->init(qosFileList))
{
ERROR_LOG(m_logger) << "Error initializing dds connections - aborting";
return false;
}
m_ddsConnector->initPublisherSubscriber();
m_pacemaker = std::make_shared<Core::Pacemaker>(m_ddsConnector);
m_dtcExm = ExerciseManagement::Interface::Dtc::create(m_ddsConnector);
connect(m_dtcExm.get(), &ExerciseManagement::Interface::Dtc::exerciseChanged,
this, &DdsHandler::onExerciseChanged);
m_dtcExm->enableExercise();
return true;
}
void DdsHandler::onExerciseChanged(const ExerciseManagement::Exercise &ex, DataModification modType)
{
if (modType == DataModification::eRemoved)
return;
if (ex.id() != m_ddsConnector->getPartitionId())
return;
bool bHlaIsActive = ex.hasHlaInterface() &&
(ex.state() == ExerciseManagement::ExerciseState::Started ||
ex.state() == ExerciseManagement::ExerciseState::Paused);
if (bHlaIsActive == m_hlaIsActive)
return;
m_hlaIsActive = bHlaIsActive;
emit exerciseHlaStateChanged(m_hlaIsActive);
}
}