CGMES_3_0_0
Loading...
Searching...
No Matches
TopologicalIsland.hpp
1#ifndef TopologicalIsland_H
2#define TopologicalIsland_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 "IdentifiedObject.hpp"
13#include "BaseClassDefiner.hpp"
14#include "CGMESProfile.hpp"
15#include "CimClassDetails.hpp"
16
17
18namespace CIMPP
19{
20 class TopologicalNode;
21
23 class TopologicalIsland : public IdentifiedObject
24 {
25 public:
26 /* constructor initialising all attributes to null */
27 TopologicalIsland();
28 ~TopologicalIsland() override;
29
32
34 std::list<CIMPP::TopologicalNode*> TopologicalNodes;
35
36 static const char debugName[];
37 const char* debugString() const override;
38
39 const std::list<std::string>& getAttributeNames() const override;
40
41 const std::string& getClassNamespaceUrl() const override;
42 const std::string& getAttributeNamespaceUrl(const std::string& attrName) const override;
43
44 const std::list<CGMESProfile>& getPossibleProfiles() const override;
45 const CGMESProfile& getRecommendedProfile() const override;
46 const std::list<CGMESProfile>& getPossibleAttributeProfiles(const std::string& attrName) const override;
47 const std::list<CGMESProfile>& getPossibleProfilesIncludingAttributes() const override;
48
49 static void addConstructToMap(std::unordered_map<std::string, BaseClass* (*)()>& factory_map);
50 static void addPrimitiveAssignFnsToMap(std::unordered_map<std::string, assign_function>& assign_map);
51 static void addClassAssignFnsToMap(std::unordered_map<std::string, class_assign_function>& assign_map);
52 void addPrimitiveGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
53 void addClassGetFnsToMap(std::map<std::string, class_get_function>& get_map) const override;
54 void addEnumGetFnsToMap(std::map<std::string, get_function>& get_map) const override;
55
56 bool isAssignableFrom(BaseClass* otherObject) const override;
57 static const BaseClassDefiner declare();
58
59 protected:
60 std::map<std::string, AttrDetails> allAttrDetailsMap() const override;
61 };
62
63 BaseClass* TopologicalIsland_factory();
64}
65#endif
Definition BaseClass.hpp:22
Definition BaseClassDefiner.hpp:12
std::list< CIMPP::TopologicalNode * > TopologicalNodes
A topological node belongs to a topological island. Default: {}.
Definition TopologicalIsland.hpp:34
CIMPP::TopologicalNode * AngleRefTopologicalNode
The angle reference for the island. Normally there is one TopologicalNode that is selected as the ang...
Definition TopologicalIsland.hpp:31
For a detailed substation model a topological node is a set of connectivity nodes that,...
Definition TopologicalNode.hpp:31