1#ifndef PowerSystemResource_H
2#define PowerSystemResource_H
10#include <unordered_map>
12#include "IdentifiedObject.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
25 class PowerSystemResource :
public IdentifiedObject
29 PowerSystemResource();
30 ~PowerSystemResource()
override;
41 static const char debugName[];
42 const char* debugString()
const override;
44 const std::list<std::string>& getAttributeNames()
const override;
46 const std::string& getClassNamespaceUrl()
const override;
47 const std::string& getAttributeNamespaceUrl(
const std::string& attrName)
const override;
49 const std::list<CGMESProfile>& getPossibleProfiles()
const override;
50 const CGMESProfile& getRecommendedProfile()
const override;
51 const std::list<CGMESProfile>& getPossibleAttributeProfiles(
const std::string& attrName)
const override;
52 const std::list<CGMESProfile>& getPossibleProfilesIncludingAttributes()
const override;
54 static void addConstructToMap(std::unordered_map<std::string,
BaseClass* (*)()>& factory_map);
55 static void addPrimitiveAssignFnsToMap(std::unordered_map<std::string, assign_function>& assign_map);
56 static void addClassAssignFnsToMap(std::unordered_map<std::string, class_assign_function>& assign_map);
57 void addPrimitiveGetFnsToMap(std::map<std::string, get_function>& get_map)
const override;
58 void addClassGetFnsToMap(std::map<std::string, class_get_function>& get_map)
const override;
59 void addEnumGetFnsToMap(std::map<std::string, get_function>& get_map)
const override;
61 bool isAssignableFrom(
BaseClass* otherObject)
const override;
65 std::map<std::string, AttrDetails> allAttrDetailsMap()
const override;
Definition BaseClass.hpp:22
Definition BaseClassDefiner.hpp:12
Control is used for supervisory/device control. It represents control outputs that are used to change...
Definition Control.hpp:29
The place, scene, or point of something where someone or something has been, is, and/or will be at a ...
Definition Location.hpp:27
A Measurement represents any measured, calculated or non-measured non-calculated quantity....
Definition Measurement.hpp:29
std::list< CIMPP::Control * > Controls
The controller outputs used to actually govern a regulating device, e.g. the magnetization of a synch...
Definition PowerSystemResource.hpp:33
CIMPP::Location * Location
Location of this power system resource. Default: nullptr.
Definition PowerSystemResource.hpp:36
std::list< CIMPP::Measurement * > Measurements
The measurements associated with this power system resource. Default: {}.
Definition PowerSystemResource.hpp:39