diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2019-03-08 13:22:14 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2019-03-08 13:22:14 (GMT) |
commit | 856dfb72dec63f566c5525df42a8b292987a14d6 (patch) | |
tree | 9ec45be18f53cec5499d3618cd4a17c2468f670a /src/gtkext/graph/cluster-int.h | |
parent | 18aca544d1e1acf84f6be981fdd94ecabc92bae3 (diff) |
Reordered blocks in graph view to avoid edge crossing.
Diffstat (limited to 'src/gtkext/graph/cluster-int.h')
-rw-r--r-- | src/gtkext/graph/cluster-int.h | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/src/gtkext/graph/cluster-int.h b/src/gtkext/graph/cluster-int.h index 881a60a..3121d64 100644 --- a/src/gtkext/graph/cluster-int.h +++ b/src/gtkext/graph/cluster-int.h @@ -49,21 +49,27 @@ void g_graph_cluster_setup_links(GGraphCluster *); /* Organise la disposition d'un ensemble de blocs basiques. */ void g_graph_cluster_dispatch_x(GGraphCluster *); +/* Détermine une direction préférée pour la suite du bloc. */ +bool g_graph_cluster_get_exit_direction(const GGraphCluster *, const GGraphCluster *, LeavingLinkDir *); + +/* Réorganise au besoin les liens sortants d'un bloc. */ +void g_graph_cluster_sort_leaving_links(GGraphCluster *); + +/* Calcule les ordonnées extrèmes atteintes via liens sortants. */ +bool g_graph_cluster_compute_min_max_bottom(const GGraphCluster *cluster, gint [2]); + +/* Retrouve s'il existe un lien entrant vers un bloc d'origine. */ +const leaving_link_t *g_graph_cluster_has_origin(const GGraphCluster *, const GGraphCluster *); + +/* Compare deux clusters selon un de leurs liens d'origine. */ +int g_graph_cluster_compare_by_origin(const GGraphCluster **, const GGraphCluster **, const GGraphCluster *); + /* Réorganise au besoin les liens entrants d'un bloc. */ void g_graph_cluster_sort_incoming_links(GGraphCluster *); /* Retrouve l'indice d'un lien entrant donné pour un bloc. */ size_t g_graph_cluster_find_incoming_link(const GGraphCluster *, const leaving_link_t *); -/* Détermine si un cluster possède un lien sortant. */ -bool g_graph_cluster_has_exit_link(GGraphCluster *, bool *); - -/* Compare deux clusters avec lien sortant. */ -int g_graph_cluster_compare_by_exit(const GGraphCluster **, const GGraphCluster **, const bool *); - -/* Réordonne les blocs sortant du cluster au mieux. */ -void g_graph_cluster_reorder_exit_blocks(GGraphCluster *); - /* Réordonne les blocs de départ de boucle au mieux. */ void g_graph_cluster_reorder_loop_blocks(GGraphCluster *); |