28 #ifndef AVOID_HYPEREDGE_H 29 #define AVOID_HYPEREDGE_H 36 #include "libavoid/dllexport.h" 55 typedef std::list<VertInf *> VertexList;
56 typedef std::set<ConnRef *> ConnRefSet;
57 typedef std::set<VertInf *> VertexSet;
59 typedef std::vector<JunctionRef *> JunctionRefVector;
60 typedef std::vector<ConnEndList> ConnEndListVector;
61 typedef std::vector<ConnRefList> ConnRefListVector;
62 typedef std::vector<JunctionRefList> JunctionRefListVector;
63 typedef std::vector<VertexSet> VertexSetVector;
148 size_t registerHyperedgeForRerouting(
ConnEndList terminals);
164 size_t registerHyperedgeForRerouting(
JunctionRef *junction);
189 size_t count(
void)
const;
198 void setRouter(
Router *router);
200 ConnRefSet calcHyperedgeConnectors(
void);
202 void performRerouting(
void);
203 void outputInstanceToSVG(FILE *fp);
204 bool findAttachedObjects(
size_t index,
ConnRef *connector,
206 bool findAttachedObjects(
size_t index,
JunctionRef *junction,
207 ConnRef *ignore, ConnRefSet& hyperedgeConns);
210 ConnEndListVector m_terminals_vector;
211 JunctionRefVector m_root_junction_vector;
212 JunctionRefListVector m_new_junctions_vector;
213 JunctionRefListVector m_deleted_junctions_vector;
214 ConnRefListVector m_new_connectors_vector;
215 ConnRefListVector m_deleted_connectors_vector;
216 VertexSetVector m_terminal_vertices_vector;
217 VertexList m_added_vertices;
ConnRefList deletedConnectorList
A list of deleted connectors.
Definition: hyperedge.h:91
The ConnRef class represents a connector object.
Definition: connector.h:131
The HyperedgeNewAndDeletedObjectLists class stores lists of objects created and deleted during hypere...
Definition: hyperedge.h:79
std::list< ConnRef * > ConnRefList
A list of ConnRef objects.
Definition: connector.h:47
The HyperedgeRerouter class is a convenience object that can be used to register hyperedges to be rer...
Definition: hyperedge.h:129
std::list< ConnEnd > ConnEndList
A list of ConnEnd objects.
Definition: hyperedge.h:44
JunctionRefList newJunctionList
A list of newly created junctions.
Definition: hyperedge.h:82
JunctionRefList deletedJunctionList
A list of deleted junctions.
Definition: hyperedge.h:88
libavoid: Object-avoiding orthogonal and polyline connector routing library.
Definition: actioninfo.cpp:33
std::list< JunctionRef * > JunctionRefList
A list of JunctionRef objects.
Definition: hyperedge.h:53
The Router class represents a libavoid router instance.
Definition: router.h:386
The JunctionRef class represents a fixed or free-floating point that connectors can be attached to...
Definition: junction.h:57
ConnRefList newConnectorList
A list of newly created connectors.
Definition: hyperedge.h:85
ConnRefList changedConnectorList
A list of changed connectors.
Definition: hyperedge.h:94