/** * DdsHandler for DDS * $Id$ * $HeadURL$ * $Author$ * Created by gr, SLSE, 2015-09-02 */ #pragma once #include #include #include #include #include #include #include #include #include #include #include #include #include "logger.h" namespace AlarmManagement { class DdsHandler final { public: explicit DdsHandler(const std::shared_ptr &ddsConnector); ~DdsHandler() = default; bool init(const QStringList &qosFileList = QStringList()); std::shared_ptr dds() const { return m_ddsConnector; } std::shared_ptr dtsAlm() const { return m_dtsAlm;} ///< Pointer to DTS AlarmManagement interface object std::shared_ptr dtcAlm() const { return m_dtcAlm;} ///< Pointer to DTC AlarmManagement interface object std::shared_ptr ftsAlm() const { return m_ftsAlm;} ///< Pointer to FTS AlarmManagement interface object std::shared_ptr dtcEem() const { return m_dtcEem;} ///< Pointer to DTC ExerciseEventManagement interface object std::shared_ptr ftcMrk() const { return m_ftcMrk;} std::shared_ptr dtcPpm() const { return m_dtcPpm;} ///< Pointer to DTC Participant Management interface object std::shared_ptr dtcTab() const { return m_dtcTab;} ///< Pointer to DTC TrainingAreaBase Management interface object std::shared_ptr publishSOS() const {return m_dtsEmergencyCall;} std::shared_ptr dtcExm() const {return m_exmDtc;} std::shared_ptr topicLockMaster() const { return m_topicLockMaster; } int exerciseId() const; qint64 currentPartitionTime() const; private: std::shared_ptr m_ddsConnector; std::shared_ptr m_dtcCore; std::shared_ptr m_topicLockMaster; std::shared_ptr m_dtsAlm; ///< Pointer to DTS AlarmManagement interface object std::shared_ptr m_dtcAlm; ///< Pointer to DTC AlarmManagement interface object std::shared_ptr m_ftsAlm; ///< Pointer to FTS AlarmManagement interface object std::shared_ptr m_dtcEem; std::shared_ptr m_exmDtc; std::shared_ptr m_ftcMrk; std::shared_ptr m_dtcPpm; std::shared_ptr m_dtcTab; std::shared_ptr m_dtsEmergencyCallPublisher; std::shared_ptr m_dtsEmergencyCall; NGL::INGLLogger &m_logger; }; }