/** * ModuleTests for Msg * $Id: ces_tests_gas_pipe.h 49256 2020-01-06 14:09:14Z ehrlicher $ * $HeadURL: svn://slssvn/TDS/branches/product/features/3dws_devel/Lts/Services/FeedGeoJson/ModuleTests/ces_tests_gas_pipe.h $ * $Author: ehrlicher $ */ #pragma once #include "websocket_server.h" #include #include #include #include #include #include #include namespace FeedGeoJson { class FeedGeoJson : public QObject { Q_OBJECT public: explicit FeedGeoJson(QObject *parent = nullptr); ~FeedGeoJson(); bool init(const int domainId, const int exerciseId, WebSocketServer &webSocketServer); bool testsSuccessful() const { return m_bTestsSuccessful; } private slots: /** * Handle the signals from 'ParticipantManagement' */ void onParticipantPositionChanged(const ParticipantManagement::ParticipantPosition &data, DataModification modType); void onDynamicParticipantDataChanged(const ParticipantManagement::DynamicParticipantData &data, DataModification modType); protected Q_SLOTS: void failExit(); void ExitSuccess(); protected: private: // methods QString getGeoJsonPosition(const ParticipantManagement::ParticipantPosition &data); private: // structs struct Participant { int participantId; int participantTypeId; int equipmentNumber; int partyId; int buildingId; int roomId; int relX; int relY; }; private: std::shared_ptr m_ddsConnector; std::shared_ptr m_ddsConnector42; std::shared_ptr m_aesDtc; std::shared_ptr m_pdmDtc; std::shared_ptr m_ppmDtc; bool m_bTestsSuccessful; LtsCoordTrans::UtmCoordinate m_refPos; NGL::INGLLogger &m_logger; QVector m_participants; WebSocketServer* m_websocketServer; }; } // namespace FeedGeoJson