Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
Pump.hpp
Go to the documentation of this file.
1#ifndef IV_SRC_MIMICS_INDICATORS_PUMP_HPP_
2#define IV_SRC_MIMICS_INDICATORS_PUMP_HPP_
3
14
15class CCircleGraphics;
16
18{
19
28{
29public:
30 Pump();
31 ~Pump() override = default;
32
33 bool load(const iv::file::xml::node &nodeControlMimic) override;
34 bool save(iv::file::xml::node &nodeControlMimic) const override;
35
36 // Controller
37 void getChannels(const std::shared_ptr<std::vector<std::weak_ptr<iv::channels::AbstractChannel>>>
38 &channelsInControl) const override;
39 void mapChannels(const std::function<void(std::weak_ptr<iv::channels::AbstractChannel> &)> &mapFunction) override;
40 [[nodiscard]] std::shared_ptr<iv::mimics::AbstractMimicElement> clone() const override;
41 void executeCommand(const std::string &strAction) const override;
42
43 [[nodiscard]] std::optional<iv::types::color> getColorWorkingState() const override;
44 [[nodiscard]] std::optional<iv::types::color> getColorControlState() const override;
45 [[nodiscard]] std::optional<std::string> getStringWorkingState() const override;
46 [[nodiscard]] std::optional<std::string> getStringControlState() const override;
47 [[nodiscard]] std::optional<iv::mimics::eAlarmState> getAlarmState() const override;
48
49 // View
50 void drawSpecific(IGraphics *graphics, std::optional<iv::types::color> colorWorkingState,
51 std::optional<iv::types::color> colorControlState, iv::eLanguage drawingLanguage) override;
52
53 // UI
55 void addOptionsMenu(const std::shared_ptr<iv::mimics::MimicControlMenu> &menu) override;
56
57protected:
59 Pump(const Pump &other);
60
61 // View
62 std::unique_ptr<CCircleGraphics> m_circlePump {nullptr};
63 std::unique_ptr<CCircleGraphics> m_circleMechanic1 {nullptr};
64 std::unique_ptr<CCircleGraphics> m_circleMechanic2 {nullptr};
65
69
92 struct Keys
93 {
94 static constexpr std::string_view pumpDesign {"PumpDesign"};
95 static constexpr std::string_view isControl {"IsControl"};
96 };
97 struct Sections
98 {
99 static constexpr std::string_view pump {"Pump"};
100 static constexpr std::string_view maintenance {"Maintenance"};
101 static constexpr std::string_view automaticSemiAuto {"AutomaticSemiAuto"};
102 static constexpr std::string_view commandsStartStop {"CommandsStartStop"};
103 static constexpr std::string_view controlLock {"ControlLock"};
104 static constexpr std::string_view feedbackRunningStopped {"FeedbackRunningStopped"};
105 static constexpr std::string_view orderStartStop {"OrderStartStop"};
106 static constexpr std::string_view remoteLocal {"RemoteLocal"};
107 static constexpr std::string_view tripReset {"TripReset"};
108 };
109};
110
111}// namespace iv::mimics::elements
112
113#endif//IV_SRC_MIMICS_INDICATORS_PUMP_HPP_
Definition AbstractComponentGUI.hpp:30
Definition CCircleGraphics.hpp:8
Definition IGraphics.hpp:20
Definition xmlFile.hpp:15
Definition AbstractMimicElement.hpp:21
Definition Pump.hpp:28
std::optional< iv::types::color > getColorWorkingState() const override
Retrieves the color representing the current working state of the element.
Definition Pump.cpp:159
std::unique_ptr< CCircleGraphics > m_circleMechanic1
Definition Pump.hpp:63
std::optional< iv::mimics::eAlarmState > getAlarmState() const override
Definition Pump.cpp:268
std::shared_ptr< iv::mimics::AbstractMimicElement > clone() const override
Definition Pump.cpp:150
void addOptionsMenu(const std::shared_ptr< iv::mimics::MimicControlMenu > &menu) override
Definition Pump.cpp:600
std::optional< std::string > getStringControlState() const override
Definition Pump.cpp:240
bool save(iv::file::xml::node &nodeControlMimic) const override
Definition Pump.cpp:80
std::unique_ptr< CCircleGraphics > m_circlePump
Definition Pump.hpp:62
iv::mimics::support::Maintenance m_maintenance
Definition Pump.hpp:68
void drawSpecific(IGraphics *graphics, std::optional< iv::types::color > colorWorkingState, std::optional< iv::types::color > colorControlState, iv::eLanguage drawingLanguage) override
Draws the specific abstract element shape.
Definition Pump.cpp:293
AbstractComponentGUI * panelEditControl() override
UI methods ///.
Definition Pump.cpp:365
void executeCommand(const std::string &strAction) const override
Run actions ///.
Definition Pump.cpp:155
std::unique_ptr< CCircleGraphics > m_circleMechanic2
Definition Pump.hpp:64
std::optional< std::string > getStringWorkingState() const override
Definition Pump.cpp:233
~Pump() override=default
iv::mimics::elements::eCompressorDesign m_pumpDesign
Definition Pump.hpp:67
bool load(const iv::file::xml::node &nodeControlMimic) override
Definition Pump.cpp:43
void mapChannels(const std::function< void(std::weak_ptr< iv::channels::AbstractChannel > &)> &mapFunction) override
Processed gets ///.
Definition Pump.cpp:133
void getChannels(const std::shared_ptr< std::vector< std::weak_ptr< iv::channels::AbstractChannel > > > &channelsInControl) const override
AƱade los canales que el MimicElement tiene enlazado.
Definition Pump.cpp:115
Pump()
Definition Pump.cpp:22
bool m_isControl
Definition Pump.hpp:66
std::optional< iv::types::color > getColorControlState() const override
Retrieves the color representing the current control state of the element.
Definition Pump.cpp:195
Definition Maintenance.hpp:11
Definition AutomaticSemiAuto.hpp:21
Definition CommandsStartStop.hpp:11
Definition ControlLock.hpp:11
Definition FeedbackRunningStopped.hpp:12
Definition OrderStartStop.hpp:12
Definition RemoteLocal.hpp:20
Definition TripReset.hpp:12
constexpr iv::types::color SedniSemiAuto
Definition color.hpp:341
constexpr iv::types::color SedniElementNotWorkingBlack
Definition color.hpp:338
constexpr iv::types::color SedniElementWorkingGreen
Definition color.hpp:337
constexpr iv::types::color White
Definition color.hpp:222
constexpr iv::types::color SedniElementOfflineBlack
Definition color.hpp:345
constexpr iv::types::color SedniLocal
Definition color.hpp:343
constexpr iv::types::color SedniElementOfflineGrey
Definition color.hpp:346
constexpr iv::types::color SedniElementUndefined
Definition color.hpp:344
constexpr iv::types::color SedniAuto
Definition color.hpp:342
constexpr iv::types::color Gray
Definition color.hpp:91
Definition enums.hpp:95
eCompressorDesign
Definition enums.hpp:153
eMimicElementType
Definition enums.hpp:8
uint32_t color
Definition types.hpp:12
eLanguage
Definition enums.hpp:37
static constexpr iv::types::color color
Definition Pump.hpp:79
static constexpr iv::types::color controlStateRemoteSemiAuto
Definition Pump.hpp:87
static constexpr iv::types::color workingStateOffline
Definition Pump.hpp:84
static constexpr iv::types::color workingStateUndefined
Definition Pump.hpp:83
static constexpr iv::types::color controlStateRemoteAuto
Definition Pump.hpp:88
static constexpr iv::types::color controlStateOffline
Definition Pump.hpp:89
static constexpr iv::types::color workingStateStopped
Definition Pump.hpp:81
static constexpr iv::types::color circle
Definition Pump.hpp:78
static constexpr iv::types::color controlStateLocal
Definition Pump.hpp:86
static constexpr iv::types::color workingStateRunning
Definition Pump.hpp:82
static constexpr iv::mimics::elements::eCompressorDesign pumpDesign
Definition Pump.hpp:73
static constexpr bool isControl
Definition Pump.hpp:75
Definition Pump.hpp:93
static constexpr std::string_view isControl
Definition Pump.hpp:95
static constexpr std::string_view pumpDesign
Definition Pump.hpp:94
static constexpr std::string_view pump
Definition Pump.hpp:99
static constexpr std::string_view controlLock
Definition Pump.hpp:103
static constexpr std::string_view orderStartStop
Definition Pump.hpp:105
static constexpr std::string_view commandsStartStop
Definition Pump.hpp:102
static constexpr std::string_view feedbackRunningStopped
Definition Pump.hpp:104
static constexpr std::string_view remoteLocal
Definition Pump.hpp:106
static constexpr std::string_view maintenance
Definition Pump.hpp:100
static constexpr std::string_view tripReset
Definition Pump.hpp:107
static constexpr std::string_view automaticSemiAuto
Definition Pump.hpp:101