/** * Initialization for GuezNasat * $Id$ * $HeadURL$ * $Author$ * Created by hjl, SLSE, 2016-11-14 */ #pragma once #include #include #include #include class QSqlDatabase; namespace GuezNasat { class DdsHandler; class DatabaseInterface; class HandlerNasatAircraft; class HandlerNasatAircraftParticipant; class HandlerNasatImpact; class HandlerNasatNineLiner; class HandlerParticipant; class AbstractSocketHandler; using DbHandler = NGLDB::DbServiceHandler; class HandlerCodificationData; class GNA_SERVER_EXPORT Initialization final { public: Initialization(); ~Initialization(); bool initialize(const std::shared_ptr &ddsConnector, const QSqlDatabase &); bool loadFromDatabase(); std::shared_ptr dds() const { return m_ddsHandler; } std::shared_ptr db() const; std::shared_ptr nasatAircraft() const { return m_handlerNasatAircraft; } std::shared_ptr nasatAircraftParticipant() const { return m_handlerNasatAircraftParticipant; } std::shared_ptr handlerParticipant() const { return m_handlerParticipant; } private: // attributes std::shared_ptr m_ddsHandler; ///< Pointer to DDS handler std::shared_ptr m_dbHandler; ///< Pointer to DB handler std::shared_ptr m_handlerNasatAircraft; std::shared_ptr m_handlerNasatAircraftParticipant; std::shared_ptr m_handlerNasatImpact; std::shared_ptr m_handlerNasatNineLiner; std::shared_ptr m_handlerParticipant; std::shared_ptr m_jsonSocketHandler; NGL::INGLLogger &m_logger; ///< Interface to the Logging-Facility }; } // namespace GuezNasat