#pragma once #include #include #include #include #include "logger.h" namespace Core { class Pacemaker; namespace Interface { class Dts; } } namespace WarehouseManagement { class DdsHandler { public: explicit DdsHandler(int domainId); bool init(const QStringList &qosFileList = QStringList()); std::shared_ptr pacemaker() const { return m_pacemaker; } std::shared_ptr exmDtc() const { return m_exmDtc; } std::shared_ptr ppmDtc() const { return m_ppmDtc; } std::shared_ptr ppmFtc() const { return m_ppmFtc; } std::shared_ptr dds() const { return m_ddsConnector; } dds::domain::DomainParticipant getDomainParticipant() const { return m_ddsConnector->getDomainParticipant(); } private: NGL::INGLLogger &m_logger; std::shared_ptr m_ddsConnector; std::shared_ptr m_pacemaker; std::shared_ptr m_exmDtc; std::shared_ptr m_ppmDtc; std::shared_ptr m_ppmFtc; }; }