Loading [MathJax]/extensions/tex2jax.js

Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Loading...
Searching...
No Matches
UmlDiagramGraph.h
Go to the documentation of this file.
1
38#pragma once
39
40#include <ogdf/basic/SList.h>
42
43namespace ogdf {
44
52 friend OGDF_EXPORT std::ostream& operator<<(std::ostream&, const UmlDiagramGraph&);
53
54public:
56 enum class UmlDiagramType {
57 classDiagram,
58 moduleDiagram,
59 sequenceDiagram,
60 collaborationDiagram,
61 componentDiagram,
62 unknownDiagram
63 };
64
65private:
68
71
74
79
84
89
94
99
104
105public:
108 const string& diagramName);
109
112
114 void addNodeWithGeometry(node umlNode, double x, double y, double w, double h);
115
118
120 const string& getDiagramName() const { return m_diagramName; }
121
123 const char* getDiagramTypeString() const;
124
126 const SList<node>& getNodes() const { return m_containedNodes; }
127
129 const SList<edge>& getEdges() const { return m_containedEdges; }
130
132 const SList<double>& getX() const { return m_x; }
133
135 const SList<double>& getY() const { return m_y; }
136
138 const SList<double>& getWidth() const { return m_w; }
139
141 const SList<double>& getHeight() const { return m_h; }
142};
143
144}
Declaration of singly linked lists and iterators.
Contains the class UmlModelGraph which represents the complete UML Model in a graph like data structu...
Class for the representation of edges.
Definition Graph_d.h:300
Class for the representation of nodes.
Definition Graph_d.h:177
Singly linked lists (maintaining the length of the list).
Definition SList.h:833
Contains the class UmlDiagramGraph which represents one particular diagram of the complete UML Model.
UmlDiagramType
This enum type represents the different diagram types of UML. *‍/.
~UmlDiagramGraph()
Destructor.
SList< double > m_y
This list contains the y-coordinates of the nodes contained in the represented diagram.
string m_diagramName
The name of the diagram.
friend std::ostream & operator<<(std::ostream &, const UmlDiagramGraph &)
const SList< node > & getNodes() const
Access to contained nodes.
SList< double > m_x
This list contains the x-coordinates of the nodes contained in the represented diagram.
UmlDiagramGraph(const UmlModelGraph &umlModelGraph, UmlDiagramType diagramType, const string &diagramName)
Constructor.
void addNodeWithGeometry(node umlNode, double x, double y, double w, double h)
Adds a node with the given coordinates.
void addEdge(edge umlEdge)
Adds an edge.
SList< double > m_h
This list contains the height of the nodes contained in the represented diagram.
SList< edge > m_containedEdges
This list holds pointer to the edges contained in the represented diagram.
const string & getDiagramName() const
Returns the name of the diagram.
UmlDiagramType m_diagramType
The type of diagram.
SList< double > m_w
This list contains the width of the nodes contained in the represented diagram.
const SList< double > & getWidth() const
Access to width.
const SList< double > & getY() const
Access to y-coordinates.
SList< node > m_containedNodes
This list holds pointer to the nodes contained in the represented diagram.
const SList< double > & getHeight() const
Access to height.
const SList< edge > & getEdges() const
Access to contained edges.
const SList< double > & getX() const
Access to x-coordinates.
const char * getDiagramTypeString() const
Returns the type of the diagram as string.
const UmlModelGraph & m_modelGraph
Reference to the model graph.
This class represents the complete UML Model in a graph-like data structure.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
Definition config.h:101
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.