1#ifndef ThermalGeneratingUnit_H
2#define ThermalGeneratingUnit_H
10#include <unordered_map>
12#include "GeneratingUnit.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
26 class ThermalGeneratingUnit :
public GeneratingUnit
30 ThermalGeneratingUnit();
31 ~ThermalGeneratingUnit()
override;
45 static const char debugName[];
46 const char* debugString()
const override;
48 const std::list<std::string>& getAttributeNames()
const override;
50 const std::string& getClassNamespaceUrl()
const override;
51 const std::string& getAttributeNamespaceUrl(
const std::string& attrName)
const override;
53 const std::list<CGMESProfile>& getPossibleProfiles()
const override;
54 const CGMESProfile& getRecommendedProfile()
const override;
55 const std::list<CGMESProfile>& getPossibleAttributeProfiles(
const std::string& attrName)
const override;
56 const std::list<CGMESProfile>& getPossibleProfilesIncludingAttributes()
const override;
58 static void addConstructToMap(std::unordered_map<std::string,
BaseClass* (*)()>& factory_map);
59 static void addPrimitiveAssignFnsToMap(std::unordered_map<std::string, assign_function>& assign_map);
60 static void addClassAssignFnsToMap(std::unordered_map<std::string, class_assign_function>& assign_map);
61 void addPrimitiveGetFnsToMap(std::map<std::string, get_function>& get_map)
const override;
62 void addClassGetFnsToMap(std::map<std::string, class_get_function>& get_map)
const override;
63 void addEnumGetFnsToMap(std::map<std::string, get_function>& get_map)
const override;
65 bool isAssignableFrom(
BaseClass* otherObject)
const override;
69 std::map<std::string, AttrDetails> allAttrDetailsMap()
const override;
72 BaseClass* ThermalGeneratingUnit_factory();
Definition BaseClass.hpp:22
Definition BaseClassDefiner.hpp:12
Compressed air energy storage plant.
Definition CAESPlant.hpp:24
A set of thermal generating units for the production of electrical energy and process steam (usually ...
Definition CogenerationPlant.hpp:24
A set of combustion turbines and steam turbines where the exhaust heat from the combustion turbines i...
Definition CombinedCyclePlant.hpp:24
The fossil fuel consumed by the non-nuclear thermal generating unit. For example, coal,...
Definition FossilFuel.hpp:25
CIMPP::CombinedCyclePlant * CombinedCyclePlant
A thermal generating unit may be a member of a combined cycle plant. Default: nullptr.
Definition ThermalGeneratingUnit.hpp:40
std::list< CIMPP::FossilFuel * > FossilFuels
A thermal generating unit may have one or more fossil fuels. Default: {}.
Definition ThermalGeneratingUnit.hpp:43
CIMPP::CogenerationPlant * CogenerationPlant
A thermal generating unit may be a member of a cogeneration plant. Default: nullptr.
Definition ThermalGeneratingUnit.hpp:37
CIMPP::CAESPlant * CAESPlant
A thermal generating unit may be a member of a compressed air energy storage plant....
Definition ThermalGeneratingUnit.hpp:34