48 lines
1.6 KiB
C++
Executable File
48 lines
1.6 KiB
C++
Executable File
/**
|
|
* @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 <InfrastructureManagement/ism_ftc.h>
|
|
#include <InfrastructureManagement/logger.h>
|
|
#include <Plugins/InfrastructureManagement/ism_data_plugin_interface.h>
|
|
#include <Plugins/InfrastructureManagement/ism_resource_management_gui_plugin_interface.h>
|
|
#include <Plugins/SituationMapPlugin/situation_map_gui_plugin_interface.h>
|
|
|
|
namespace LtsUtils
|
|
{
|
|
class RequestHelper;
|
|
}
|
|
|
|
namespace InfrastructureManagement
|
|
{
|
|
class MountingPointSelector
|
|
: public Interface::Ftc::MountingPointPlanModifyReplyHandler
|
|
{
|
|
public:
|
|
explicit MountingPointSelector(const std::shared_ptr<Interface::Dtc> &dtc, const std::shared_ptr<Interface::Ftc> &ftc, const std::shared_ptr<ForeignDataInterface> &ismDataIfc, LtsUtils::RequestHelper *requestHelper, LOGGER_T logger);
|
|
virtual ~MountingPointSelector() = default;
|
|
|
|
virtual void addMountingPoints(const QVector<int32_t> &mountingPointIds, const QMap<int32_t, MountingPointState> &states, QWidget *parentWidget) = 0;
|
|
|
|
void onMountingPointPlanModifyReply(const Core::FunctionReplyObject &replyObject) override final;
|
|
|
|
protected: //methods
|
|
void startModifyRequest(const std::vector<MountingPointPlan> &data);
|
|
|
|
protected: // attributes
|
|
std::shared_ptr<ForeignDataInterface> m_ismDataIfc;
|
|
std::shared_ptr<Interface::Ftc> m_ftc;
|
|
std::shared_ptr<Interface::Dtc> m_dtc;
|
|
LtsUtils::RequestHelper *m_requestHelper;
|
|
LOGGER_T m_logger;
|
|
};
|
|
|
|
} // namespace InfrastructureManagement
|