/** * Handler for buildingState * $Id$ * $HeadURL$ * $Author$ * Created by gr, SLSE, 2018-07-02 */ #pragma once #include #include "dds_handler.h" #include "logger.h" #include #include #include #include <../Proxies/TrainingAreaBase/tab_ftc.h> #include <../Proxies/TrainingAreaBase/tab_dtc.h> #include // AES-Handling for participants within buildings namespace TargetManagement { class HandlerTargetConfig final : public QObject , protected Interface::Fts::ConfigureTargetRequestHandler , protected TrainingAreaBase::Interface::Ftc::SendTargetDataReplyHandler { Q_OBJECT public: explicit HandlerTargetConfig(const std::shared_ptr &ddsHandler, QObject *parent = nullptr); ~HandlerTargetConfig() = default; /** * Initialize the handler to manage information from player management */ bool init(); void onSendTargetDataReply(const Core::FunctionReplyObject &replyObject) override final; private Q_SLOTS: /** * Handle new Target Configuration */ void onTargetDataChanged(const TrainingAreaBase::TargetData &targetData, DataModification modType); private: // methoden void onConfigureTargetRequest(const rti::core::SampleIdentity &cookie, const ConfigureTargetRequest &request) override; Core::FunctionReplyObject configureTargetRequest(const ConfigureTargetRequest &request); private: // attributes std::shared_ptr m_ddsHandler; ///< Pointer to DDS handler std::shared_ptr m_dtcTab; std::shared_ptr m_dtsTgt; NGL::INGLLogger &m_logger; ///< Interface to the Logging-Facility }; } // namespace TargetManagement