Crossings Minimization
1.0

Go to the source code of this file.
Functions  
static void  dfs_visit (Nodeptr node) 
static void  initialize_dfs_weights (void) 
static void  visit_upper_edges (Nodeptr node) 
static void  visit_lower_edges (Nodeptr node) 
static void  dfs (void) 
void  assignDfsWeights (void) 
Variables  
static int  preorder_number = 0 
void assignDfsWeights  (  void  ) 
Assigns weights to nodes based on their preorder number in a depthfirst search that starts at the first node on the lowest layer.
Definition at line 123 of file dfs.c.
References dfs(), and initialize_dfs_weights().
Referenced by depthFirstSearch().

static 
Initiates a depthfirst search in each connected component using the leftmost node in the lowest layer as the first node of the component. This is the standard outer loop of dfs, and would not be needed if the graph were connected.
Definition at line 94 of file dfs.c.
References dfs_visit(), layers, layer_struct::nodes, number_of_layers, layer_struct::number_of_nodes, preorder_number, and node_struct::weight.
Referenced by assignDfsWeights().

static 
Visits the given node, assigns it the next preorder number, and recursively visits all unvisited adjacent nodes; edges to highernumbered layers are given precedence.
Definition at line 74 of file dfs.c.
References node_struct::name, preorder_number, visit_lower_edges(), visit_upper_edges(), and node_struct::weight.
Referenced by dfs(), visit_lower_edges(), and visit_upper_edges().

static 
Sets all preorder numbers (weights) to 1 (not visited)
Definition at line 27 of file dfs.c.
References layers, layer_struct::nodes, number_of_layers, layer_struct::number_of_nodes, and node_struct::weight.
Referenced by assignDfsWeights().

static 
Visits (does a dfs_visit) the nodes on the next lower layer to which the given node is adjacent.
Definition at line 59 of file dfs.c.
References dfs_visit(), node_struct::down_degree, node_struct::down_edges, edge_struct::down_node, and node_struct::weight.
Referenced by dfs_visit().

static 
Visits (does a dfs_visit) the nodes on the next higher layer to which the given node is adjacent.
Definition at line 45 of file dfs.c.
References dfs_visit(), node_struct::up_degree, node_struct::up_edges, edge_struct::up_node, and node_struct::weight.
Referenced by dfs_visit().

static 
Definition at line 15 of file dfs.c.
Referenced by dfs(), and dfs_visit().