title
Graph Drawing Toolkit

An object-oriented C++ library for handling and drawing graphs

layered_undi_graph Class Reference

#include <rm3_layered_undi_graph.h>

Inheritance diagram for layered_undi_graph:

Inheritance graph
[legend]
Collaboration diagram for layered_undi_graph:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 layered_undi_graph ()
 layered_undi_graph (undi_graph ug)
 layered_undi_graph (undi_graph &ug, gdt::gdtnode_map< int > in_levels)
 layered_undi_graph (undi_graph &ug, gdt::gdtnode_map< double > in_ascisse)
 layered_undi_graph (undi_graph &ug, gdt::gdtnode_map< int > in_levels, gdt::gdtnode_map< double > in_ascisse)
 ~layered_undi_graph ()
int number_of_levels ()
void set_level (gdtnode n, int level)
void set_level (int i, int level)
void set_ascissa (gdtnode n, double ascissa)
void set_ascissa (int i, double ascissa)
int get_level (gdtnode n)
int get_level (int i)
double get_ascissa (gdtnode n)
double get_ascissa (int i)
gdt::PQ_tree< gdtnode > * get_PQ_tree (int level)
gdt::gdtlist< gdtnodeget_list_of_dummy ()
int length_of_edge (gdtedge e)
int length_of_edge (int i)
double width_of_level (int level)
int numbers_of_nodes_of_level (int level)
gdt::gdtlist< gdtnodecreate_list_of_node_of_level (int level)
void make_proper_layered ()
int count_of_crossing_between_two_levels (int level1, int level2)
int count_of_crossing ()
gdt::gdtlist< gdtnodesort_nodes_of_a_level (int level)
double find_barycenter (gdtnode node)
void set_ascisse_on_barycenter_of_a_level (int level)
void set_ascisse_on_barycenter ()
void reduce_PQ_trees_on_barycenter ()

Protected Attributes

gdt::gdtnode_map< intlevels
gdt::gdtnode_map
< double > 
ascisse
gdt::gdtmap< int,
gdt::PQ_tree
< LEAVES_VALUE > * > 
map_level_PQ_tree
gdt::gdtnode_map< bool > is_dummy
gdt::gdtlist
< gdt::gdtlist
< gdtnode > > 
list_of_path_of_dummy


Detailed Description

Global class layered_undi_graph.
A layered undi_graph is a graph in which the nodes are assigned to levels.

Definition at line 31 of file rm3_layered_undi_graph.h.


Constructor & Destructor Documentation

layered_undi_graph::layered_undi_graph (  ) 

Empty constructor.

layered_undi_graph::layered_undi_graph ( undi_graph  ug  ) 

One-argument constructor

layered_undi_graph::layered_undi_graph ( undi_graph ug,
gdt::gdtnode_map< int in_levels 
)

Two-argument constructor

layered_undi_graph::layered_undi_graph ( undi_graph ug,
gdt::gdtnode_map< double >  in_ascisse 
)

Two-argument constructor

layered_undi_graph::layered_undi_graph ( undi_graph ug,
gdt::gdtnode_map< int in_levels,
gdt::gdtnode_map< double >  in_ascisse 
)

Three-argument constructor

layered_undi_graph::~layered_undi_graph (  ) 

Destructor.


Member Function Documentation

int layered_undi_graph::number_of_levels (  ) 

Returns the number of levels.

void layered_undi_graph::set_level ( gdtnode  n,
int  level 
)

Sets the level, input: node and level to set.

void layered_undi_graph::set_level ( int  i,
int  level 
)

Sets the level, input: node-id and level to set.

void layered_undi_graph::set_ascissa ( gdtnode  n,
double  ascissa 
)

Sets the ascissa, input: node and ascissa to set.

void layered_undi_graph::set_ascissa ( int  i,
double  ascissa 
)

Sets the ascissa, input: node-id and ascissa to set.

int layered_undi_graph::get_level ( gdtnode  n  ) 

Returns the level of the input node.

int layered_undi_graph::get_level ( int  i  ) 

Returns the level of node with id is given as input.

double layered_undi_graph::get_ascissa ( gdtnode  n  ) 

Returns the ascissa of the input node.

double layered_undi_graph::get_ascissa ( int  i  ) 

Returns the ascissa of node with id is given as input.

gdt::PQ_tree<gdtnode>* layered_undi_graph::get_PQ_tree ( int  level  ) 

Returns the PQ_tree of level given as input.

gdt::gdtlist<gdtnode> layered_undi_graph::get_list_of_dummy (  ) 

Returns the list of dummy vertices.

int layered_undi_graph::length_of_edge ( gdtedge  e  ) 

Returns the length of the input edge.

int layered_undi_graph::length_of_edge ( int  i  ) 

Returns the length of edge with id given as input.

double layered_undi_graph::width_of_level ( int  level  ) 

Returns the width of a level given as input.

int layered_undi_graph::numbers_of_nodes_of_level ( int  level  ) 

Returns the number of nodes of the given level.

gdt::gdtlist<gdtnode> layered_undi_graph::create_list_of_node_of_level ( int  level  ) 

Returns the list of nodes of the given level.

void layered_undi_graph::make_proper_layered (  ) 

Adds the dummy vertices and edges.

int layered_undi_graph::count_of_crossing_between_two_levels ( int  level1,
int  level2 
)

Returns the number of crossings between two levels.

int layered_undi_graph::count_of_crossing (  ) 

Returns the number of crossings of the entire graph.

gdt::gdtlist<gdtnode> layered_undi_graph::sort_nodes_of_a_level ( int  level  ) 

Sorts nodes of a given level respect to their ascisse.

double layered_undi_graph::find_barycenter ( gdtnode  node  ) 

Finds barycenter of a given node, respect to ascisse of its neighbours of the under level.

void layered_undi_graph::set_ascisse_on_barycenter_of_a_level ( int  level  ) 

Sets ascisse of nodes of level respect to barycenter of adjacent nodes of the under level.

void layered_undi_graph::set_ascisse_on_barycenter (  ) 

Sets ascisse of nodes of all levels respect to barycenter of adjacent nodes of the under level.

void layered_undi_graph::reduce_PQ_trees_on_barycenter (  ) 

Reduces PQ_trees of all level the constraint is the ordering on barycenter.


Member Data Documentation

gdt::gdtnode_map<int> layered_undi_graph::levels [protected]

Definition at line 101 of file rm3_layered_undi_graph.h.

gdt::gdtnode_map<double> layered_undi_graph::ascisse [protected]

Definition at line 102 of file rm3_layered_undi_graph.h.

gdt::gdtmap< int,gdt::PQ_tree<LEAVES_VALUE>* > layered_undi_graph::map_level_PQ_tree [protected]

Definition at line 104 of file rm3_layered_undi_graph.h.

gdt::gdtnode_map<bool> layered_undi_graph::is_dummy [protected]

Definition at line 105 of file rm3_layered_undi_graph.h.

gdt::gdtlist< gdt::gdtlist<gdtnode> > layered_undi_graph::list_of_path_of_dummy [protected]

Definition at line 106 of file rm3_layered_undi_graph.h.


The documentation for this class was generated from the following file:
Generated on Thu Jan 10 14:48:51 2008 for GDToolkit GAPI by  doxygen 1.5.3