/** * MainHandler for Messaging * $Id$ * $HeadURL$ * $Author$ * Created by hjl, SLSE, 2016-09-21 */ #pragma once #include #include #include #include "dds_handler.h" #include "logger.h" namespace DDSConnector { class DdsConnector; } namespace NGLDB { template class DbServiceHandler; } namespace AlarmManagement { using DbHandler = NGLDB::DbServiceHandler; class DdsHandler; class HandlerConfigureAlarms; class HandlerEmergencyCall; class HandlerParticipant; class ALM_SERVER_EXPORT Initialization { public: Initialization(); ~Initialization(); bool initialize(const std::shared_ptr &ddsConnector, const QSqlDatabase &sqlDb); bool loadFromDatabase(); std::shared_ptr dds() const { return m_ddsHandler; } std::shared_ptr db() const; std::shared_ptr hdlParticipant() const { return m_handlerParticipant; } private: // attributes std::shared_ptr m_ddsHandler; std::shared_ptr m_dbHandler; ///< Pointer to DB handler std::shared_ptr m_handlerConfigureAlarms; std::shared_ptr m_handlerParticipant; ///< Pointer to handler for all participants std::shared_ptr m_handlerEmergencyCall; NGL::INGLLogger &m_logger; ///< Interface to the Logging-Facility }; } // namespace MessagingDataManagement