/** * @RDE_HEADER@ * Abstract class which defines selection behavior when clicking on mounting points on the map * $Id$ * $HeadURL$ * $Author$ * Created by Hannes Baeuerle, SLSE, 2017-04-05 */ #pragma once #include #include #include #include #include namespace LtsUtils { class RequestHelper; } namespace InfrastructureManagement { class MountingPointSelector : public Interface::Ftc::MountingPointPlanModifyReplyHandler { public: explicit MountingPointSelector(const std::shared_ptr &dtc, const std::shared_ptr &ftc, const std::shared_ptr &ismDataIfc, LtsUtils::RequestHelper *requestHelper, LOGGER_T logger); virtual ~MountingPointSelector() = default; virtual void addMountingPoints(const QVector &mountingPointIds, const QMap &states, QWidget *parentWidget) = 0; void onMountingPointPlanModifyReply(const Core::FunctionReplyObject &replyObject) override final; protected: //methods void startModifyRequest(const std::vector &data); protected: // attributes std::shared_ptr m_ismDataIfc; std::shared_ptr m_ftc; std::shared_ptr m_dtc; LtsUtils::RequestHelper *m_requestHelper; LOGGER_T m_logger; }; } // namespace InfrastructureManagement