CGMES_3_0_0
Loading...
Searching...
No Matches
NonConformLoadGroup.hpp
1#ifndef NonConformLoadGroup_H
2#define NonConformLoadGroup_H
3/*
4Generated from the CGMES files via cimgen: https://github.com/sogno-platform/cimgen
5*/
6
7#include <list>
8#include <map>
9#include <string>
10#include <unordered_map>
11
12#include "LoadGroup.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
16
17
18namespace CIMPP
19{
20 class NonConformLoad;
22
24 class NonConformLoadGroup : public LoadGroup
25 {
26 public:
27 /* constructor initialising all attributes to null */
28 NonConformLoadGroup();
29 ~NonConformLoadGroup() override;
30
32 std::list<CIMPP::NonConformLoad*> EnergyConsumers;
33
35 std::list<CIMPP::NonConformLoadSchedule*> NonConformLoadSchedules;
36
37 static const char debugName[];
38 const char* debugString() const override;
39
40 const std::list<std::string>& getAttributeNames() const override;
41
42 const std::string& getClassNamespaceUrl() const override;
43 const std::string& getAttributeNamespaceUrl(const std::string& attrName) const override;
44
45 const std::list<CGMESProfile>& getPossibleProfiles() const override;
46 const CGMESProfile& getRecommendedProfile() const override;
47 const std::list<CGMESProfile>& getPossibleAttributeProfiles(const std::string& attrName) const override;
48 const std::list<CGMESProfile>& getPossibleProfilesIncludingAttributes() const override;
49
50 static void addConstructToMap(std::unordered_map<std::string, BaseClass* (*)()>& factory_map);
51 static void addPrimitiveAssignFnsToMap(std::unordered_map<std::string, assign_function>& assign_map);
52 static void addClassAssignFnsToMap(std::unordered_map<std::string, class_assign_function>& assign_map);
53 void addPrimitiveGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
54 void addClassGetFnsToMap(std::map<std::string, class_get_function>& get_map) const override;
55 void addEnumGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
56
57 bool isAssignableFrom(BaseClass* otherObject) const override;
58 static const BaseClassDefiner declare();
59
60 protected:
61 std::map<std::string, AttrDetails> allAttrDetailsMap() const override;
62 };
63
64 BaseClass* NonConformLoadGroup_factory();
65}
66#endif
Definition BaseClass.hpp:22
Definition BaseClassDefiner.hpp:12
std::list< CIMPP::NonConformLoadSchedule * > NonConformLoadSchedules
The NonConformLoadSchedules in the NonConformLoadGroup. Default: {}.
Definition NonConformLoadGroup.hpp:35
std::list< CIMPP::NonConformLoad * > EnergyConsumers
Conform loads assigned to this ConformLoadGroup. Default: {}.
Definition NonConformLoadGroup.hpp:32
An active power (Y1-axis) and reactive power (Y2-axis) schedule (curves) versus time (X-axis) for non...
Definition NonConformLoadSchedule.hpp:24
NonConformLoad represents loads that do not follow a daily load change pattern and whose changes are ...
Definition NonConformLoad.hpp:24