1#ifndef LoadGenericNonLinear_H
2#define LoadGenericNonLinear_H
10#include <unordered_map>
12#include "LoadDynamics.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
18#include "GenericNonLinearLoadModelKind.hpp"
25 class LoadGenericNonLinear :
public LoadDynamics
29 LoadGenericNonLinear();
30 ~LoadGenericNonLinear()
override;
53 static const char debugName[];
54 const char* debugString()
const override;
56 const std::list<std::string>& getAttributeNames()
const override;
58 const std::string& getClassNamespaceUrl()
const override;
59 const std::string& getAttributeNamespaceUrl(
const std::string& attrName)
const override;
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;
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;
73 bool isAssignableFrom(
BaseClass* otherObject)
const override;
77 std::map<std::string, AttrDetails> allAttrDetailsMap()
const override;
80 BaseClass* LoadGenericNonLinear_factory();
Definition BaseClass.hpp:22
Definition BaseClassDefiner.hpp:12
A floating point number. The range is unspecified and not limited.
Definition Float.hpp:14
Type of generic non-linear load model.
Definition GenericNonLinearLoadModelKind.hpp:14
CIMPP::Float lt
Transient voltage index for active power (LT). Default: 0.0.
Definition LoadGenericNonLinear.hpp:45
CIMPP::Seconds tp
Time constant of lag function of active power (TP) (> 0). Default: 0.0.
Definition LoadGenericNonLinear.hpp:48
CIMPP::Float bs
Steady state voltage index for reactive power (BS). Default: 0.0.
Definition LoadGenericNonLinear.hpp:33
CIMPP::Seconds tq
Time constant of lag function of reactive power (TQ) (> 0). Default: 0.0.
Definition LoadGenericNonLinear.hpp:51
CIMPP::GenericNonLinearLoadModelKind genericNonLinearLoadModelType
Type of generic non-linear load model. Default: 0.
Definition LoadGenericNonLinear.hpp:39
CIMPP::Float ls
Steady state voltage index for active power (LS). Default: 0.0.
Definition LoadGenericNonLinear.hpp:42
CIMPP::Float bt
Transient voltage index for reactive power (BT). Default: 0.0.
Definition LoadGenericNonLinear.hpp:36
Time, in seconds.
Definition Seconds.hpp:14