CGMES_3_0_0
Loading...
Searching...
No Matches
Control.hpp
1#ifndef Control_H
2#define Control_H
3/*
4Generated from the CGMES files via cimgen: https://github.com/sogno-platform/cimgen
5*/
6
7#include <list>
8#include <map>
9#include <string>
10#include <unordered_map>
11
12#include "IOPoint.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
16
17#include "Boolean.hpp"
18#include "DateTime.hpp"
19#include "String.hpp"
20#include "UnitMultiplier.hpp"
21#include "UnitSymbol.hpp"
22
23namespace CIMPP
24{
26
28 class Control : public IOPoint
29 {
30 public:
31 /* constructor initialising all attributes to null */
32 Control();
33 ~Control() override;
34
37
40
43
46
49
52
53 static const char debugName[];
54 const char* debugString() const override;
55
56 const std::list<std::string>& getAttributeNames() const override;
57
58 const std::string& getClassNamespaceUrl() const override;
59 const std::string& getAttributeNamespaceUrl(const std::string& attrName) const override;
60
61 const std::list<CGMESProfile>& getPossibleProfiles() const override;
62 const CGMESProfile& getRecommendedProfile() const override;
63 const std::list<CGMESProfile>& getPossibleAttributeProfiles(const std::string& attrName) const override;
64 const std::list<CGMESProfile>& getPossibleProfilesIncludingAttributes() const override;
65
66 static void addConstructToMap(std::unordered_map<std::string, BaseClass* (*)()>& factory_map);
67 static void addPrimitiveAssignFnsToMap(std::unordered_map<std::string, assign_function>& assign_map);
68 static void addClassAssignFnsToMap(std::unordered_map<std::string, class_assign_function>& assign_map);
69 void addPrimitiveGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
70 void addClassGetFnsToMap(std::map<std::string, class_get_function>& get_map) const override;
71 void addEnumGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
72
73 bool isAssignableFrom(BaseClass* otherObject) const override;
74 static const BaseClassDefiner declare();
75
76 protected:
77 std::map<std::string, AttrDetails> allAttrDetailsMap() const override;
78 };
79
80 BaseClass* Control_factory();
81}
82#endif
Definition BaseClass.hpp:22
Definition BaseClassDefiner.hpp:12
Definition Boolean.hpp:13
CIMPP::PowerSystemResource * PowerSystemResource
Regulating device governed by this control output. Default: nullptr.
Definition Control.hpp:36
CIMPP::UnitSymbol unitSymbol
The unit of measure of the controlled quantity. Default: 0.
Definition Control.hpp:51
CIMPP::String controlType
Specifies the type of Control. For example, this specifies if the Control represents BreakerOpen,...
Definition Control.hpp:39
CIMPP::Boolean operationInProgress
Indicates that a client is currently sending control commands that has not completed....
Definition Control.hpp:42
CIMPP::UnitMultiplier unitMultiplier
The unit multiplier of the controlled quantity. Default: 0.
Definition Control.hpp:48
CIMPP::DateTime timeStamp
The last time a control output was sent. Default: "".
Definition Control.hpp:45
Date and time as "yyyy-mm-ddThh:mm:ss.sss", which conforms with ISO 8601. UTC time zone is specified ...
Definition DateTime.hpp:15
A power system resource (PSR) can be an item of equipment such as a switch, an equipment container co...
Definition PowerSystemResource.hpp:26
A string consisting of a sequence of characters. The character encoding is UTF-8. The string length i...
Definition String.hpp:15
The unit multipliers defined for the CIM. When applied to unit symbols, the unit symbol is treated as...
Definition UnitMultiplier.hpp:14
The derived units defined for usage in the CIM. In some cases, the derived unit is equal to an SI uni...
Definition UnitSymbol.hpp:14