CGMES_3_0_0
Loading...
Searching...
No Matches
PowerElectronicsUnit.hpp
1#ifndef PowerElectronicsUnit_H
2#define PowerElectronicsUnit_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 "Equipment.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
16
17#include "ActivePower.hpp"
18
19namespace CIMPP
20{
22
24 class PowerElectronicsUnit : public Equipment
25 {
26 public:
27 /* constructor initialising all attributes to null */
28 PowerElectronicsUnit();
29 ~PowerElectronicsUnit() override;
30
33
36
39
40 static const char debugName[];
41 const char* debugString() const override;
42
43 const std::list<std::string>& getAttributeNames() const override;
44
45 const std::string& getClassNamespaceUrl() const override;
46 const std::string& getAttributeNamespaceUrl(const std::string& attrName) const override;
47
48 const std::list<CGMESProfile>& getPossibleProfiles() const override;
49 const CGMESProfile& getRecommendedProfile() const override;
50 const std::list<CGMESProfile>& getPossibleAttributeProfiles(const std::string& attrName) const override;
51 const std::list<CGMESProfile>& getPossibleProfilesIncludingAttributes() const override;
52
53 static void addConstructToMap(std::unordered_map<std::string, BaseClass* (*)()>& factory_map);
54 static void addPrimitiveAssignFnsToMap(std::unordered_map<std::string, assign_function>& assign_map);
55 static void addClassAssignFnsToMap(std::unordered_map<std::string, class_assign_function>& assign_map);
56 void addPrimitiveGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
57 void addClassGetFnsToMap(std::map<std::string, class_get_function>& get_map) const override;
58 void addEnumGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
59
60 bool isAssignableFrom(BaseClass* otherObject) const override;
61 static const BaseClassDefiner declare();
62
63 protected:
64 std::map<std::string, AttrDetails> allAttrDetailsMap() const override;
65 };
66
67 BaseClass* PowerElectronicsUnit_factory();
68}
69#endif
Definition BaseClass.hpp:22
Product of RMS value of the voltage and the RMS value of the in-phase component of the current.
Definition ActivePower.hpp:14
Definition BaseClassDefiner.hpp:12
A connection to the AC network for energy production or consumption that uses power electronics rathe...
Definition PowerElectronicsConnection.hpp:29
CIMPP::ActivePower minP
Minimum active power limit. This is the minimum (nameplate) limit for the unit. Default: 0....
Definition PowerElectronicsUnit.hpp:38
CIMPP::ActivePower maxP
Maximum active power limit. This is the maximum (nameplate) limit for the unit. Default: 0....
Definition PowerElectronicsUnit.hpp:35
CIMPP::PowerElectronicsConnection * PowerElectronicsConnection
A power electronics unit has a connection to the AC network. Default: nullptr.
Definition PowerElectronicsUnit.hpp:32