1#ifndef WindTurbineType3IEC_H
2#define WindTurbineType3IEC_H
10#include <unordered_map>
12#include "WindTurbineType3or4IEC.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
28 class WindTurbineType3IEC :
public WindTurbineType3or4IEC
32 WindTurbineType3IEC();
33 ~WindTurbineType3IEC()
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;
Definition BaseClass.hpp:22
Definition BaseClassDefiner.hpp:12
One-dimensional aerodynamic model. Reference: IEC 61400-27-1:2015, 5.6.1.2.
Definition WindAeroOneDimIEC.hpp:26
Two-dimensional aerodynamic model. Reference: IEC 61400-27-1:2015, 5.6.1.3.
Definition WindAeroTwoDimIEC.hpp:26
P control model type 3. Reference: IEC 61400-27-1:2015, 5.6.5.4.
Definition WindContPType3IEC.hpp:29
Pitch angle control model. Reference: IEC 61400-27-1:2015, 5.6.5.2.
Definition WindContPitchAngleIEC.hpp:28
Parent class supporting relationships to IEC wind turbines type 3 generator models of IEC type 3A and...
Definition WindGenType3IEC.hpp:25
Two mass model. Reference: IEC 61400-27-1:2015, 5.6.2.1.
Definition WindMechIEC.hpp:28
CIMPP::WindAeroTwoDimIEC * WindAeroTwoDimIEC
Wind aerodynamic model associated with this wind turbine type 3 model. Default: nullptr.
Definition WindTurbineType3IEC.hpp:39
CIMPP::WindContPType3IEC * WindContPType3IEC
Wind control P type 3 model associated with this wind turbine type 3 model. Default: nullptr.
Definition WindTurbineType3IEC.hpp:42
CIMPP::WindGenType3IEC * WindGenType3IEC
Wind generator type 3 model associated with this wind turbine type 3 model. Default: nullptr.
Definition WindTurbineType3IEC.hpp:48
CIMPP::WindMechIEC * WindMechIEC
Wind mechanical model associated with this wind turbine type 3 model. Default: nullptr.
Definition WindTurbineType3IEC.hpp:51
CIMPP::WindAeroOneDimIEC * WindAeroOneDimIEC
Wind aerodynamic model associated with this wind generator type 3 model. Default: nullptr.
Definition WindTurbineType3IEC.hpp:36
CIMPP::WindContPitchAngleIEC * WindContPitchAngleIEC
Wind control pitch angle model associated with this wind turbine type 3. Default: nullptr.
Definition WindTurbineType3IEC.hpp:45