CGMES_3_0_0
Loading...
Searching...
No Matches
TapChanger.hpp
1#ifndef TapChanger_H
2#define TapChanger_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 "PowerSystemResource.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
16
17#include "Boolean.hpp"
18#include "Float.hpp"
19#include "Integer.hpp"
20#include "Voltage.hpp"
21
22namespace CIMPP
23{
24 class SvTapStep;
26 class TapSchedule;
27
29 class TapChanger : public PowerSystemResource
30 {
31 public:
32 /* constructor initialising all attributes to null */
33 TapChanger();
34 ~TapChanger() override;
35
38
41
43 std::list<CIMPP::TapSchedule*> TapSchedules;
44
47
50
53
56
59
62
65
68
69 static const char debugName[];
70 const char* debugString() const override;
71
72 const std::list<std::string>& getAttributeNames() const override;
73
74 const std::string& getClassNamespaceUrl() const override;
75 const std::string& getAttributeNamespaceUrl(const std::string& attrName) const override;
76
77 const std::list<CGMESProfile>& getPossibleProfiles() const override;
78 const CGMESProfile& getRecommendedProfile() const override;
79 const std::list<CGMESProfile>& getPossibleAttributeProfiles(const std::string& attrName) const override;
80 const std::list<CGMESProfile>& getPossibleProfilesIncludingAttributes() const override;
81
82 static void addConstructToMap(std::unordered_map<std::string, BaseClass* (*)()>& factory_map);
83 static void addPrimitiveAssignFnsToMap(std::unordered_map<std::string, assign_function>& assign_map);
84 static void addClassAssignFnsToMap(std::unordered_map<std::string, class_assign_function>& assign_map);
85 void addPrimitiveGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
86 void addClassGetFnsToMap(std::map<std::string, class_get_function>& get_map) const override;
87 void addEnumGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
88
89 bool isAssignableFrom(BaseClass* otherObject) const override;
90 static const BaseClassDefiner declare();
91
92 protected:
93 std::map<std::string, AttrDetails> allAttrDetailsMap() const override;
94 };
95
96 BaseClass* TapChanger_factory();
97}
98#endif
Definition BaseClass.hpp:22
Definition BaseClassDefiner.hpp:12
Definition Boolean.hpp:13
A floating point number. The range is unspecified and not limited.
Definition Float.hpp:14
Definition Integer.hpp:13
State variable for transformer tap step.
Definition SvTapStep.hpp:25
Describes behaviour specific to tap changers, e.g. how the voltage at the end of a line varies with t...
Definition TapChangerControl.hpp:24
std::list< CIMPP::TapSchedule * > TapSchedules
A TapChanger can have TapSchedules. Default: {}.
Definition TapChanger.hpp:43
CIMPP::Integer neutralStep
The neutral tap step position for this winding. The attribute shall be equal to or greater than lowSt...
Definition TapChanger.hpp:58
CIMPP::Integer highStep
Highest possible tap step position, advance from neutral. The attribute shall be greater than lowStep...
Definition TapChanger.hpp:49
CIMPP::Integer lowStep
Lowest possible tap step position, retard from neutral. Default: 0.
Definition TapChanger.hpp:52
CIMPP::Integer normalStep
The tap step position used in normal network operation for this winding. For a Fixed tap changer indi...
Definition TapChanger.hpp:64
CIMPP::Voltage neutralU
Voltage at which the winding operates at the neutral tap setting. It is the voltage at the terminal o...
Definition TapChanger.hpp:61
CIMPP::SvTapStep * SvTapStep
The tap step state associated with the tap changer. Default: nullptr.
Definition TapChanger.hpp:37
CIMPP::TapChangerControl * TapChangerControl
The regulating control scheme in which this tap changer participates. Default: nullptr.
Definition TapChanger.hpp:40
CIMPP::Boolean controlEnabled
Specifies the regulation status of the equipment. True is regulating, false is not regulating....
Definition TapChanger.hpp:46
CIMPP::Float step
Tap changer position. Starting step for a steady state solution. Non integer values are allowed to su...
Definition TapChanger.hpp:67
CIMPP::Boolean ltcFlag
Specifies whether or not a TapChanger has load tap changing capabilities. Default: false.
Definition TapChanger.hpp:55
A pre-established pattern over time for a tap step.
Definition TapSchedule.hpp:24
Electrical voltage, can be both AC and DC.
Definition Voltage.hpp:14