Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
structs.hpp
Go to the documentation of this file.
1#ifndef IV_SRC_MODEL_PMS_STRUCTS_HPP_
2#define IV_SRC_MODEL_PMS_STRUCTS_HPP_
3
5
6#include <memory>
7#include <vector>
8
9namespace iv::model::pms
10{
11
13{
14 bool save(file::xml::node &nodeGenerator) const;
15 bool load(const file::xml::node &nodeGenerator);
16
17 //Hardcoded channels
18 std::weak_ptr<iv::channels::AbstractChannel> chActivePower {};
19 std::weak_ptr<iv::channels::AbstractChannel> chStart {};
20 std::weak_ptr<iv::channels::AbstractChannel> chBreakerConnect {};
21 std::weak_ptr<iv::channels::AbstractChannel> chStop {};
22 std::weak_ptr<iv::channels::AbstractChannel> chBreakerDisconnect {};
23 std::weak_ptr<iv::channels::AbstractChannel> chIncreaseSpeed {};
24 std::weak_ptr<iv::channels::AbstractChannel> chDecreaseSpeed {};
25 std::weak_ptr<iv::channels::AbstractChannel> chRemote {};
26 std::weak_ptr<iv::channels::AbstractChannel> chBreakerConnected {};
27 std::weak_ptr<iv::channels::AbstractChannel> chMainBarBlackout {};
28 std::weak_ptr<iv::channels::AbstractChannel> chBreakerRemote {};
29 std::weak_ptr<iv::channels::AbstractChannel> chFixedSpeed {};
30 std::weak_ptr<iv::channels::AbstractChannel> chBusBarVoltage {};
31 std::weak_ptr<iv::channels::AbstractChannel> chVoltage {};
32 std::weak_ptr<iv::channels::AbstractChannel> chCurrent {};
33 std::weak_ptr<iv::channels::AbstractChannel> chFrequency {};
34 std::weak_ptr<iv::channels::AbstractChannel> chBarFrequency {};
35 std::weak_ptr<iv::channels::AbstractChannel> chPower {};
36 std::weak_ptr<iv::channels::AbstractChannel> chRegulationMode {};
37 std::weak_ptr<iv::channels::AbstractChannel> chGroupBrk {};
38 std::weak_ptr<iv::channels::AbstractChannel> chRunningHours {};
39 std::weak_ptr<iv::channels::AbstractChannel> chBusBarFreqMode {};
40 std::weak_ptr<iv::channels::AbstractChannel> chMainBusLoadMode {};
41 std::weak_ptr<iv::channels::AbstractChannel> chBusBarPriorities {};
42 std::weak_ptr<iv::channels::AbstractChannel> chFreqSetPoint {};
43 std::weak_ptr<iv::channels::AbstractChannel> chLoadSetPoint {};
44 std::weak_ptr<iv::channels::AbstractChannel> chPriority {};
45 std::weak_ptr<iv::channels::AbstractChannel> chRunning {};
46 std::weak_ptr<iv::channels::AbstractChannel> chPowerAvailable {};
47 std::weak_ptr<iv::channels::AbstractChannel> chMainBarPowerAvailable {};
48
49 //Variable Order Channels
50 std::weak_ptr<iv::channels::AbstractChannel> chAutoMode {};
51 std::weak_ptr<iv::channels::AbstractChannel> chBreakerStatus {};
52 std::weak_ptr<iv::channels::AbstractChannel> chStatus {};
53 std::weak_ptr<iv::channels::AbstractChannel> chPriorityBackup {};
54 std::weak_ptr<iv::channels::AbstractChannel> chRunningBackup {};
55 std::weak_ptr<iv::channels::AbstractChannel> chAutoBackup {};
56 std::weak_ptr<iv::channels::AbstractChannel> chBreakerTripped {};
57 std::weak_ptr<iv::channels::AbstractChannel> chTripped {};
58 std::weak_ptr<iv::channels::AbstractChannel> chHighLoadStatus {};
59 std::weak_ptr<iv::channels::AbstractChannel> chLowLoadStatus {};
60 std::weak_ptr<iv::channels::AbstractChannel> chOverloadAlarm {};
61 std::weak_ptr<iv::channels::AbstractChannel> chReversePowerAlarm {};
62 std::weak_ptr<iv::channels::AbstractChannel> chAutoModeCmd {};
63 std::weak_ptr<iv::channels::AbstractChannel> chSemiAutoModeCmd {};
64 std::weak_ptr<iv::channels::AbstractChannel> chStartCmd {};
65 std::weak_ptr<iv::channels::AbstractChannel> chStopCmd {};
66 std::weak_ptr<iv::channels::AbstractChannel> chBreakerConnectCmd {};
67 std::weak_ptr<iv::channels::AbstractChannel> chBreakerDisconnectCmd {};
68 std::weak_ptr<iv::channels::AbstractChannel> chResetCmd {};
69 std::weak_ptr<iv::channels::AbstractChannel> chBreakerResetCmd {};
70
71 //Station Channels
72 std::weak_ptr<iv::channels::AbstractChannel> chSetPriority {};
73
74 struct Sections
75 {
76 //Hardcoded channels
77 static constexpr std::string_view channelActivePower {"ChannelActivePower"};
78 static constexpr std::string_view channelStart {"ChannelStart"};
79 static constexpr std::string_view channelBreakerConnect {"ChannelBreakerConnect"};
80 static constexpr std::string_view channelStop {"ChannelStop"};
81 static constexpr std::string_view channelBreakerDisconnect {"ChannelBreakerDisconnect"};
82 static constexpr std::string_view channelIncreaseSpeed {"ChannelIncreaseSpeed"};
83 static constexpr std::string_view channelDecreaseSpeed {"ChannelDecreaseSpeed"};
84 static constexpr std::string_view channelRemote {"ChannelRemote"};
85 static constexpr std::string_view channelBreakerConnected {"ChannelBreakerConnected"};
86 static constexpr std::string_view channelMainBarBlackout {"ChannelMainBarBlackout"};
87 static constexpr std::string_view channelBreakerRemote {"ChannelBreakerRemote"};
88 static constexpr std::string_view channelFixedSpeed {"ChannelFixedSpeed"};
89 static constexpr std::string_view channelBusBarVoltage {"ChannelBusBarVoltage"};
90 static constexpr std::string_view channelVoltage {"ChannelVoltage"};
91 static constexpr std::string_view channelCurrent {"ChannelCurrent"};
92 static constexpr std::string_view channelFrequency {"ChannelFrequency"};
93 static constexpr std::string_view channelBarFrequency {"ChannelBarFrequency"};
94 static constexpr std::string_view channelPower {"ChannelPower"};
95 static constexpr std::string_view channelRegulationMode {"ChannelRegulationMode"};
96 static constexpr std::string_view channelGroupBrk {"ChannelGroupBrk"};
97 static constexpr std::string_view channelRunningHours {"ChannelRunningHours"};
98 static constexpr std::string_view channelBusBarFreqMode {"ChannelBusBarFreqMode"};
99 static constexpr std::string_view channelMainBusLoadMode {"ChannelMainBusLoadMode"};
100 static constexpr std::string_view channelBusBarPriorities {"ChannelBusBarPriorities"};
101 static constexpr std::string_view channelFreqSetPoint {"ChannelFreqSetPoint"};
102 static constexpr std::string_view channelLoadSetPoint {"ChannelLoadSetPoint"};
103 static constexpr std::string_view channelPriority {"ChannelPriority"};
104 static constexpr std::string_view channelRunning {"ChannelRunning"};
105 static constexpr std::string_view channelPowerAvailable {"ChannelPowerAvailable"};
106 static constexpr std::string_view channelMainBarPowerAvailable {"ChannelMainBarPowerAvailable"};
107
108 //Variable Order Channels
109 static constexpr std::string_view channelAutoMode {"ChannelAutoMode"};
110 static constexpr std::string_view channelBreakerStatus {"ChannelBreakerStatus"};
111 static constexpr std::string_view channelStatus {"ChannelStatus"};
112 static constexpr std::string_view channelPriorityBackup {"ChannelPriorityBackup"};
113 static constexpr std::string_view channelRunningBackup {"ChannelRunningBackup"};
114 static constexpr std::string_view channelAutoBackup {"ChannelAutoBackup"};
115 static constexpr std::string_view channelBreakerTripped {"ChannelBreakerTripped"};
116 static constexpr std::string_view channelTripped {"ChannelTripped"};
117 static constexpr std::string_view channelHighLoadStatus {"ChannelHighLoadStatus"};
118 static constexpr std::string_view channelLowLoadStatus {"ChannelLowLoadStatus"};
119 static constexpr std::string_view channelOverloadAlarm {"ChannelOverloadAlarm"};
120 static constexpr std::string_view channelReversePowerAlarm {"ChannelReversePowerAlarm"};
121 static constexpr std::string_view channelAutoModeCmd {"ChannelAutoModeCmd"};
122 static constexpr std::string_view channelSemiAutoModeCmd {"ChannelSemiAutoModeCmd"};
123 static constexpr std::string_view channelStartCmd {"ChannelStartCmd"};
124 static constexpr std::string_view channelStopCmd {"ChannelStopCmd"};
125 static constexpr std::string_view channelBreakerConnectCmd {"ChannelBreakerConnectCmd"};
126 static constexpr std::string_view channelBreakerDisconnectCmd {"ChannelBreakerDisconnectCmd"};
127 static constexpr std::string_view channelResetCmd {"ChannelResetCmd"};
128 static constexpr std::string_view channelBreakerResetCmd {"ChannelBreakerResetCmd"};
129
130 //Station Channels
131 static constexpr std::string_view channelSetPriority {"ChannelSetPriority"};
132 };
133 struct Keys
134 {
135 static constexpr std::string_view channelId {"ChannelId"};
136 };
138 {
139 static constexpr std::string string {};
140 static constexpr iv::types::pms::elementId id {0};
141 };
142};
143
145{
146 bool save(file::xml::node &nodeBusTie) const;
147 bool load(const file::xml::node &nodeBusTie);
148
149 std::weak_ptr<iv::channels::AbstractChannel> chBreakerConnectCmd {};
150 std::weak_ptr<iv::channels::AbstractChannel> chBreakerDisconnectCmd {};
151 std::weak_ptr<iv::channels::AbstractChannel> chBreakerConnected {};
152
153 struct Sections
154 {
155 static constexpr std::string_view channelBreakerConnectCmd {"ChannelBreakerConnect"};
156 static constexpr std::string_view channelBreakerDisconnectCmd {"ChannelBreakerDisconnect"};
157 static constexpr std::string_view channelBreakerConnected {"ChannelBreakerConnected"};
158 };
159 struct Keys
160 {
161 static constexpr std::string_view channelId {"ChannelId"};
162 };
164 {
165 static constexpr std::string string {};
166 static constexpr iv::types::pms::elementId id {0};
167 };
168};
169
170}// namespace iv::model::pms
171
172#endif//IV_SRC_MODEL_PMS_STRUCTS_HPP_
Definition xmlFile.hpp:15
Definition AbstractPmsAction.cpp:9
uint16_t elementId
Definition types.hpp:96
Definition structs.hpp:160
static constexpr std::string_view channelId
Definition structs.hpp:161
static constexpr std::string_view channelBreakerDisconnectCmd
Definition structs.hpp:156
static constexpr std::string_view channelBreakerConnected
Definition structs.hpp:157
static constexpr std::string_view channelBreakerConnectCmd
Definition structs.hpp:155
Definition structs.hpp:145
std::weak_ptr< iv::channels::AbstractChannel > chBreakerConnectCmd
Definition structs.hpp:149
std::weak_ptr< iv::channels::AbstractChannel > chBreakerDisconnectCmd
Definition structs.hpp:150
bool load(const file::xml::node &nodeBusTie)
Definition structs.cpp:413
std::weak_ptr< iv::channels::AbstractChannel > chBreakerConnected
Definition structs.hpp:151
bool save(file::xml::node &nodeBusTie) const
Definition structs.cpp:426
static constexpr std::string_view channelId
Definition structs.hpp:135
static constexpr std::string_view channelStopCmd
Definition structs.hpp:124
static constexpr std::string_view channelFreqSetPoint
Definition structs.hpp:101
static constexpr std::string_view channelBusBarFreqMode
Definition structs.hpp:98
static constexpr std::string_view channelCurrent
Definition structs.hpp:91
static constexpr std::string_view channelBreakerRemote
Definition structs.hpp:87
static constexpr std::string_view channelPower
Definition structs.hpp:94
static constexpr std::string_view channelBreakerDisconnect
Definition structs.hpp:81
static constexpr std::string_view channelRunningBackup
Definition structs.hpp:113
static constexpr std::string_view channelAutoMode
Definition structs.hpp:109
static constexpr std::string_view channelBreakerTripped
Definition structs.hpp:115
static constexpr std::string_view channelRemote
Definition structs.hpp:84
static constexpr std::string_view channelBreakerStatus
Definition structs.hpp:110
static constexpr std::string_view channelAutoModeCmd
Definition structs.hpp:121
static constexpr std::string_view channelRunning
Definition structs.hpp:104
static constexpr std::string_view channelOverloadAlarm
Definition structs.hpp:119
static constexpr std::string_view channelMainBusLoadMode
Definition structs.hpp:99
static constexpr std::string_view channelSemiAutoModeCmd
Definition structs.hpp:122
static constexpr std::string_view channelBreakerConnectCmd
Definition structs.hpp:125
static constexpr std::string_view channelResetCmd
Definition structs.hpp:127
static constexpr std::string_view channelPriority
Definition structs.hpp:103
static constexpr std::string_view channelLoadSetPoint
Definition structs.hpp:102
static constexpr std::string_view channelPowerAvailable
Definition structs.hpp:105
static constexpr std::string_view channelStop
Definition structs.hpp:80
static constexpr std::string_view channelBreakerConnect
Definition structs.hpp:79
static constexpr std::string_view channelBusBarVoltage
Definition structs.hpp:89
static constexpr std::string_view channelStartCmd
Definition structs.hpp:123
static constexpr std::string_view channelMainBarBlackout
Definition structs.hpp:86
static constexpr std::string_view channelPriorityBackup
Definition structs.hpp:112
static constexpr std::string_view channelReversePowerAlarm
Definition structs.hpp:120
static constexpr std::string_view channelFixedSpeed
Definition structs.hpp:88
static constexpr std::string_view channelGroupBrk
Definition structs.hpp:96
static constexpr std::string_view channelAutoBackup
Definition structs.hpp:114
static constexpr std::string_view channelBreakerResetCmd
Definition structs.hpp:128
static constexpr std::string_view channelStart
Definition structs.hpp:78
static constexpr std::string_view channelBreakerConnected
Definition structs.hpp:85
static constexpr std::string_view channelIncreaseSpeed
Definition structs.hpp:82
static constexpr std::string_view channelRegulationMode
Definition structs.hpp:95
static constexpr std::string_view channelVoltage
Definition structs.hpp:90
static constexpr std::string_view channelBreakerDisconnectCmd
Definition structs.hpp:126
static constexpr std::string_view channelHighLoadStatus
Definition structs.hpp:117
static constexpr std::string_view channelTripped
Definition structs.hpp:116
static constexpr std::string_view channelActivePower
Definition structs.hpp:77
static constexpr std::string_view channelFrequency
Definition structs.hpp:92
static constexpr std::string_view channelDecreaseSpeed
Definition structs.hpp:83
static constexpr std::string_view channelRunningHours
Definition structs.hpp:97
static constexpr std::string_view channelMainBarPowerAvailable
Definition structs.hpp:106
static constexpr std::string_view channelBusBarPriorities
Definition structs.hpp:100
static constexpr std::string_view channelBarFrequency
Definition structs.hpp:93
static constexpr std::string_view channelLowLoadStatus
Definition structs.hpp:118
static constexpr std::string_view channelSetPriority
Definition structs.hpp:131
static constexpr std::string_view channelStatus
Definition structs.hpp:111
Definition structs.hpp:13
std::weak_ptr< iv::channels::AbstractChannel > chStart
Definition structs.hpp:19
std::weak_ptr< iv::channels::AbstractChannel > chFreqSetPoint
Definition structs.hpp:42
std::weak_ptr< iv::channels::AbstractChannel > chBusBarVoltage
Definition structs.hpp:30
std::weak_ptr< iv::channels::AbstractChannel > chDecreaseSpeed
Definition structs.hpp:24
bool load(const file::xml::node &nodeGenerator)
Definition structs.cpp:19
std::weak_ptr< iv::channels::AbstractChannel > chPriorityBackup
Definition structs.hpp:53
std::weak_ptr< iv::channels::AbstractChannel > chVoltage
Definition structs.hpp:31
std::weak_ptr< iv::channels::AbstractChannel > chMainBusLoadMode
Definition structs.hpp:40
std::weak_ptr< iv::channels::AbstractChannel > chIncreaseSpeed
Definition structs.hpp:23
std::weak_ptr< iv::channels::AbstractChannel > chLoadSetPoint
Definition structs.hpp:43
std::weak_ptr< iv::channels::AbstractChannel > chBreakerTripped
Definition structs.hpp:56
std::weak_ptr< iv::channels::AbstractChannel > chPriority
Definition structs.hpp:44
std::weak_ptr< iv::channels::AbstractChannel > chBreakerConnect
Definition structs.hpp:20
std::weak_ptr< iv::channels::AbstractChannel > chBreakerDisconnectCmd
Definition structs.hpp:67
std::weak_ptr< iv::channels::AbstractChannel > chCurrent
Definition structs.hpp:32
std::weak_ptr< iv::channels::AbstractChannel > chGroupBrk
Definition structs.hpp:37
std::weak_ptr< iv::channels::AbstractChannel > chRunningBackup
Definition structs.hpp:54
std::weak_ptr< iv::channels::AbstractChannel > chFixedSpeed
Definition structs.hpp:29
std::weak_ptr< iv::channels::AbstractChannel > chStatus
Definition structs.hpp:52
std::weak_ptr< iv::channels::AbstractChannel > chBusBarPriorities
Definition structs.hpp:41
std::weak_ptr< iv::channels::AbstractChannel > chFrequency
Definition structs.hpp:33
std::weak_ptr< iv::channels::AbstractChannel > chRunning
Definition structs.hpp:45
std::weak_ptr< iv::channels::AbstractChannel > chResetCmd
Definition structs.hpp:68
std::weak_ptr< iv::channels::AbstractChannel > chMainBarPowerAvailable
Definition structs.hpp:47
std::weak_ptr< iv::channels::AbstractChannel > chHighLoadStatus
Definition structs.hpp:58
std::weak_ptr< iv::channels::AbstractChannel > chTripped
Definition structs.hpp:57
std::weak_ptr< iv::channels::AbstractChannel > chSetPriority
Definition structs.hpp:72
std::weak_ptr< iv::channels::AbstractChannel > chBreakerRemote
Definition structs.hpp:28
std::weak_ptr< iv::channels::AbstractChannel > chRemote
Definition structs.hpp:25
std::weak_ptr< iv::channels::AbstractChannel > chPower
Definition structs.hpp:35
std::weak_ptr< iv::channels::AbstractChannel > chBreakerStatus
Definition structs.hpp:51
std::weak_ptr< iv::channels::AbstractChannel > chBreakerDisconnect
Definition structs.hpp:22
std::weak_ptr< iv::channels::AbstractChannel > chStartCmd
Definition structs.hpp:64
std::weak_ptr< iv::channels::AbstractChannel > chAutoModeCmd
Definition structs.hpp:62
std::weak_ptr< iv::channels::AbstractChannel > chAutoBackup
Definition structs.hpp:55
std::weak_ptr< iv::channels::AbstractChannel > chAutoMode
Definition structs.hpp:50
std::weak_ptr< iv::channels::AbstractChannel > chRegulationMode
Definition structs.hpp:36
std::weak_ptr< iv::channels::AbstractChannel > chOverloadAlarm
Definition structs.hpp:60
std::weak_ptr< iv::channels::AbstractChannel > chStopCmd
Definition structs.hpp:65
std::weak_ptr< iv::channels::AbstractChannel > chLowLoadStatus
Definition structs.hpp:59
std::weak_ptr< iv::channels::AbstractChannel > chBreakerConnected
Definition structs.hpp:26
std::weak_ptr< iv::channels::AbstractChannel > chSemiAutoModeCmd
Definition structs.hpp:63
std::weak_ptr< iv::channels::AbstractChannel > chPowerAvailable
Definition structs.hpp:46
std::weak_ptr< iv::channels::AbstractChannel > chStop
Definition structs.hpp:21
std::weak_ptr< iv::channels::AbstractChannel > chBusBarFreqMode
Definition structs.hpp:39
std::weak_ptr< iv::channels::AbstractChannel > chBarFrequency
Definition structs.hpp:34
std::weak_ptr< iv::channels::AbstractChannel > chBreakerConnectCmd
Definition structs.hpp:66
std::weak_ptr< iv::channels::AbstractChannel > chReversePowerAlarm
Definition structs.hpp:61
bool save(file::xml::node &nodeGenerator) const
Definition structs.cpp:92
std::weak_ptr< iv::channels::AbstractChannel > chBreakerResetCmd
Definition structs.hpp:69
std::weak_ptr< iv::channels::AbstractChannel > chActivePower
Definition structs.hpp:18
std::weak_ptr< iv::channels::AbstractChannel > chMainBarBlackout
Definition structs.hpp:27
std::weak_ptr< iv::channels::AbstractChannel > chRunningHours
Definition structs.hpp:38