diff options
Diffstat (limited to 'src/gtkext/graph/nodes/flow.h')
-rw-r--r-- | src/gtkext/graph/nodes/flow.h | 99 |
1 files changed, 0 insertions, 99 deletions
diff --git a/src/gtkext/graph/nodes/flow.h b/src/gtkext/graph/nodes/flow.h deleted file mode 100644 index 76d0a03..0000000 --- a/src/gtkext/graph/nodes/flow.h +++ /dev/null @@ -1,99 +0,0 @@ - -/* Chrysalide - Outil d'analyse de fichiers binaires - * flow.h - prototypes pour l'encapsulation graphique des blocs d'exécution - * - * Copyright (C) 2013 Cyrille Bagard - * - * This file is part of Chrysalide. - * - * OpenIDA is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * OpenIDA is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Foobar. If not, see <http://www.gnu.org/licenses/>. - */ - - -#ifndef _GTKEXT_GRAPH_NODES_FLOW_H -#define _GTKEXT_GRAPH_NODES_FLOW_H - - -#include "../node.h" -#include "../../../analysis/blocks/flow.h" - - - -/* Redéfinition depuis layout.h pour contourner une boucle. */ -typedef struct _GGraphLayout GGraphLayout; - - - -#define G_TYPE_FLOW_NODE (g_flow_node_get_type()) -#define G_FLOW_NODE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), G_TYPE_FLOW_NODE, GFlowNode)) -#define G_FLOW_NODE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), G_TYPE_FLOW_NODE, GFlowNodeClass)) -#define G_IS_FLOW_NODE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), G_TYPE_FLOW_NODE)) -#define G_IS_FLOW_NODE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), G_TYPE_FLOW_NODE)) -#define G_FLOW_NODE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), G_TYPE_FLOW_NODE, GFlowNodeClass)) - - -/* Type d'un accrochage pour lien */ -typedef struct _node_slot_t node_slot_t; - -/* Encapsulation graphique d'un bloc d'exécution (instance) */ -typedef struct _GFlowNode GFlowNode; - -/* Encapsulation graphique d'un bloc d'exécution (classe) */ -typedef struct _GFlowNodeClass GFlowNodeClass; - - -/* Indique le type définit par la GLib pour l'encapsulation d'un bloc d'exécution. */ -GType g_flow_node_get_type(void); - -/* Encapsule graphiquement un bloc d'exécution. */ -GGraphNode *g_flow_node_new(GFlowBlock *, GtkBufferView *); - -/* Fournit le bloc basique à l'origine du bloc graphique. */ -GFlowBlock *g_flow_node_get_block(const GFlowNode *); - -/* Précise si le noeud a pour première instruction celle donnée. */ -bool g_flow_node_start_with(const GFlowNode *, GArchInstruction *); - -/* Précise si le noeud a pour dernière instruction celle donnée. */ -bool g_flow_node_end_with(const GFlowNode *, GArchInstruction *); - -/* Précise la hauteur minimale requise pour un noeud. */ -void g_flow_node_register_rank(const GFlowNode *, GGraphRanks *); - -/* Définit l'ordonnée de l'espace attribué à un noeud. */ -void g_flow_node_apply_rank(GFlowNode *, GGraphRanks *); - -/* Etablit les liaison entre un noeud et ses suivants. */ -void g_flow_node_link(GFlowNode *, GGraphLayout *, GGraphNode *); - -/* Place un noeud sur son support final. */ -void g_flow_node_place(const GFlowNode *, GtkGraphView *); - - - -/* ------------------------ GESTION DES ACCROCHES D'UN NOEUD ------------------------ */ - - -/* Compare deux accroches pour liens entre noeuds. */ -int g_flow_node_compare_slots_for_edges(const GFlowNode *, const node_slot_t *, gint, const node_slot_t *, gint); - -/* Réorganise au mieux les points d'accroche d'un noeud. */ -void g_flow_node_reorder_slots(const GFlowNode *, GGraphNode *); - -/* Localise un point d'accroche à un noeud graphique. */ -GdkPoint g_flow_node_get_point_from_slot(const GFlowNode *, bool, const node_slot_t *); - - - -#endif /* _GTKEXT_GRAPH_NODES_FLOW_H */ |