Files
qt5-legatus-legacy/Lts/Services/AlarmManagement/dds_handler.h
T
torstenandCopilot 3028302f7b Qt6 Migration: Merge latest Qt5 devel content and apply migration fixes
- Merged 292 changed files from dlbo snapshot
- Fixed IDL enum collisions (PortType, PdmEventType)
- Fixed Grantlee template for C++11 scoped enums
- Fixed CMake VERSION_GREATER syntax
- Added missing directories (THP, LtsRestClient, etc.)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-15 18:20:51 +00:00

73 lines
3.2 KiB
C++
Executable File

/**
* DdsHandler for DDS
* $Id$
* $HeadURL$
* $Author$
* Created by gr, SLSE, 2015-09-02
*/
#pragma once
#include <DDS/DDSConnector/dds_connector.h>
#include <DDS/Core/core_dtc.h>
#include <DDS/Core/topic_lock_master.h>
#include <AlarmManagement/alm_dts.h>
#include <AlarmManagement/alm_dtc.h>
#include <AlarmManagement/alm_fts.h>
#include <AlarmManagement/alm_dts_types.h>
#include <ExerciseEventManagement/eem_dtc.h>
#include <MarkerManagement/mrk_ftc.h>
#include <ParticipantManagement/ppm_dtc.h>
#include <TrainingAreaBase/tab_dtc.h>
#include <ExerciseManagement/exm_dtc.h>
#include "logger.h"
namespace AlarmManagement
{
class DdsHandler final
{
public:
explicit DdsHandler(const std::shared_ptr<DDSConnector::DdsConnector> &ddsConnector);
~DdsHandler() = default;
bool init(const QStringList &qosFileList = QStringList());
std::shared_ptr<DDSConnector::DdsConnector> dds() const { return m_ddsConnector; }
std::shared_ptr<AlarmManagement::Interface::Dts> dtsAlm() const { return m_dtsAlm;} ///< Pointer to DTS AlarmManagement interface object
std::shared_ptr<AlarmManagement::Interface::Dtc> dtcAlm() const { return m_dtcAlm;} ///< Pointer to DTC AlarmManagement interface object
std::shared_ptr<AlarmManagement::Interface::Fts> ftsAlm() const { return m_ftsAlm;} ///< Pointer to FTS AlarmManagement interface object
std::shared_ptr<ExerciseEventManagement::Interface::Dtc> dtcEem() const { return m_dtcEem;} ///< Pointer to DTC ExerciseEventManagement interface object
std::shared_ptr<MarkerManagement::Interface::Ftc> ftcMrk() const { return m_ftcMrk;}
std::shared_ptr<ParticipantManagement::Interface::Dtc> dtcPpm() const { return m_dtcPpm;} ///< Pointer to DTC Participant Management interface object
std::shared_ptr<TrainingAreaBase::Interface::Dtc> dtcTab() const { return m_dtcTab;} ///< Pointer to DTC TrainingAreaBase Management interface object
std::shared_ptr<DTS::AcknowledgeSOSInAllExercises> publishSOS() const {return m_dtsEmergencyCall;}
std::shared_ptr<ExerciseManagement::Interface::Dtc> dtcExm() const {return m_exmDtc;}
std::shared_ptr<Core::TopicLockMaster> topicLockMaster() const { return m_topicLockMaster; }
int exerciseId() const;
qint64 currentPartitionTime() const;
private:
std::shared_ptr<DDSConnector::DdsConnector> m_ddsConnector;
std::shared_ptr<Core::Interface::Dtc> m_dtcCore;
std::shared_ptr<Core::TopicLockMaster> m_topicLockMaster;
std::shared_ptr<AlarmManagement::Interface::Dts> m_dtsAlm; ///< Pointer to DTS AlarmManagement interface object
std::shared_ptr<AlarmManagement::Interface::Dtc> m_dtcAlm; ///< Pointer to DTC AlarmManagement interface object
std::shared_ptr<AlarmManagement::Interface::Fts> m_ftsAlm; ///< Pointer to FTS AlarmManagement interface object
std::shared_ptr<ExerciseEventManagement::Interface::Dtc> m_dtcEem;
std::shared_ptr<ExerciseManagement::Interface::Dtc> m_exmDtc;
std::shared_ptr<MarkerManagement::Interface::Ftc> m_ftcMrk;
std::shared_ptr<ParticipantManagement::Interface::Dtc> m_dtcPpm;
std::shared_ptr<TrainingAreaBase::Interface::Dtc> m_dtcTab;
std::shared_ptr<DDSConnector::Publisher> m_dtsEmergencyCallPublisher;
std::shared_ptr<DTS::AcknowledgeSOSInAllExercises> m_dtsEmergencyCall;
NGL::INGLLogger &m_logger;
};
}