CGMES_3_0_0
Loading...
Searching...
No Matches
EnergyConsumer.hpp
1#ifndef EnergyConsumer_H
2#define EnergyConsumer_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 "EnergyConnection.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
16
17#include "ActivePower.hpp"
18#include "PerCent.hpp"
19#include "ReactivePower.hpp"
20
21namespace CIMPP
22{
23 class LoadDynamics;
25
27 class EnergyConsumer : public EnergyConnection
28 {
29 public:
30 /* constructor initialising all attributes to null */
31 EnergyConsumer();
32 ~EnergyConsumer() override;
33
36
39
42
45
48
51
54
57
58 static const char debugName[];
59 const char* debugString() const override;
60
61 const std::list<std::string>& getAttributeNames() const override;
62
63 const std::string& getClassNamespaceUrl() const override;
64 const std::string& getAttributeNamespaceUrl(const std::string& attrName) const override;
65
66 const std::list<CGMESProfile>& getPossibleProfiles() const override;
67 const CGMESProfile& getRecommendedProfile() const override;
68 const std::list<CGMESProfile>& getPossibleAttributeProfiles(const std::string& attrName) const override;
69 const std::list<CGMESProfile>& getPossibleProfilesIncludingAttributes() const override;
70
71 static void addConstructToMap(std::unordered_map<std::string, BaseClass* (*)()>& factory_map);
72 static void addPrimitiveAssignFnsToMap(std::unordered_map<std::string, assign_function>& assign_map);
73 static void addClassAssignFnsToMap(std::unordered_map<std::string, class_assign_function>& assign_map);
74 void addPrimitiveGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
75 void addClassGetFnsToMap(std::map<std::string, class_get_function>& get_map) const override;
76 void addEnumGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
77
78 bool isAssignableFrom(BaseClass* otherObject) const override;
79 static const BaseClassDefiner declare();
80
81 protected:
82 std::map<std::string, AttrDetails> allAttrDetailsMap() const override;
83 };
84
85 BaseClass* EnergyConsumer_factory();
86}
87#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
CIMPP::PerCent pfixedPct
Fixed active power as a percentage of load group fixed active power. Used to represent the time-varyi...
Definition EnergyConsumer.hpp:47
CIMPP::LoadResponseCharacteristic * LoadResponse
The load response characteristic of this load. If missing, this load is assumed to be constant power....
Definition EnergyConsumer.hpp:38
CIMPP::ActivePower p
Active power of the load. Load sign convention is used, i.e. positive sign means flow out from a node...
Definition EnergyConsumer.hpp:41
CIMPP::ReactivePower qfixed
Reactive power of the load that is a fixed quantity and does not vary as load group value varies....
Definition EnergyConsumer.hpp:53
CIMPP::ReactivePower q
Reactive power of the load. Load sign convention is used, i.e. positive sign means flow out from a no...
Definition EnergyConsumer.hpp:50
CIMPP::ActivePower pfixed
Active power of the load that is a fixed quantity and does not vary as load group value varies....
Definition EnergyConsumer.hpp:44
CIMPP::LoadDynamics * LoadDynamics
Load dynamics model used to describe dynamic behaviour of this energy consumer. Default: nullptr.
Definition EnergyConsumer.hpp:35
CIMPP::PerCent qfixedPct
Fixed reactive power as a percentage of load group fixed reactive power. Used to represent the time-v...
Definition EnergyConsumer.hpp:56
Load whose behaviour is described by reference to a standard model <font color="#0f0f0f">or by defini...
Definition LoadDynamics.hpp:24
Models the characteristic response of the load demand due to changes in system conditions such as vol...
Definition LoadResponseCharacteristic.hpp:26
Percentage on a defined base. For example, specify as 100 to indicate at the defined base.
Definition PerCent.hpp:14
Product of RMS value of the voltage and the RMS value of the quadrature component of the current.
Definition ReactivePower.hpp:14