/** * DdsHandler for DDS * $Id$ * $HeadURL$ * $Author$ * Created by Hanna E. Rathje, SLSE, 2015-09-02 */ #pragma once #include #include #include #include #include "logger.h" namespace Core { class Pacemaker; } namespace InfrastructureManagement { namespace Interface { class Dtc; } } namespace ComponentMonitor { class DdsHandler final { public: DdsHandler(int domainId, int exerciseId); ~DdsHandler(); bool init(const QStringList &qosFileList = QStringList()); void enableDtcs(); std::shared_ptr pacemaker() const { return m_pacemaker; } std::shared_ptr dts() const { return m_ddsDts; } std::shared_ptr fts() const { return m_ddsFts; } std::shared_ptr ismDtc() const; private: std::shared_ptr m_ddsConnector; std::shared_ptr m_dtsCurrentRunningState; std::shared_ptr m_pacemaker; std::shared_ptr m_ddsDts; std::shared_ptr m_ddsFts; std::shared_ptr m_ismDtc; NGL::INGLLogger &m_logger; }; } // namespace ComponentMonitor