1#ifndef EnergyConsumer_H
2#define EnergyConsumer_H
10#include <unordered_map>
12#include "EnergyConnection.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
17#include "ActivePower.hpp"
19#include "ReactivePower.hpp"
27 class EnergyConsumer :
public EnergyConnection
32 ~EnergyConsumer()
override;
58 static const char debugName[];
59 const char* debugString()
const override;
61 const std::list<std::string>& getAttributeNames()
const override;
63 const std::string& getClassNamespaceUrl()
const override;
64 const std::string& getAttributeNamespaceUrl(
const std::string& attrName)
const override;
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;
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;
78 bool isAssignableFrom(
BaseClass* otherObject)
const override;
82 std::map<std::string, AttrDetails> allAttrDetailsMap()
const override;
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