/** * Send AES data to NGS * $Id$ * $HeadURL$ * $Author$ * Created by Hannes Baeuerle, SLSE, 2017-05-08 */ #pragma once #include #include #include #include #include #include //#include "typestruct.h" namespace HighLevelArchitecture { class NgsHandler; struct ParticipantPosition; class AesHandler : public QObject , protected AreaEffectSimulation::Interface::Ftc::AirSupportImpactModifyReplyHandler { Q_OBJECT public: explicit AesHandler(NgsHandler *ngsHandler); int64_t externalId(int aesItemId) const; bool init(); void onAirSupportImpactModifyReply(const Core::FunctionReplyObject &reply); private Q_SLOTS: void onAirSupportImpact(AreaEffectSimulation::AirSupportImpactModifyRequest asi, int equipmentNumber); private: NgsHandler *m_ngsHandler; std::shared_ptr m_dtcAes; std::shared_ptr m_ftcAes; std::shared_ptr m_dtcPpm; QMap m_chargeTypes; QMap m_pendingRequests; LtsUtils::RequestHelper *m_requestHelper; NGL::INGLLogger &m_logger; }; } // namespace HighLevelArchitecture