Node:Interface specification, Previous:Topology algorithm, Up:Top
When the interface is started, at first it initialize a lists of a structure containing a VLAN identifier and the related tree. This list is built by uploading the VLAN list from the database and issue a tree buildding function for each of them.
Then, controls of the interface are created based on these trees i.e the tree explorer and the topology map. If no VLAN can be retreive from the database or all the VLAN-trees are empty the interface will not start.
The topology map is a GTK control. It encapsulates the lists of host and links that are part of the map. Hosts are placed on a hash table accessed through their computer's id while links are stored in a pointer array.
Graphical hosts of the map are stored in GTK containers drawn on a layer. This choice limits the graphical possibility of the user-interface (like transparency, or data based drawing). However, the program doesn't need to bother drawing these hosts : the layer automaticaly redraws it.
The user interface allow to display the merging if it is possible of some Vlan trees choosed by the user. The Vlan trees are selected through the interface menu, nevertheless at least one of them must be selected. The merge can failed i.e a loop have been detected while the merging of trees. In this case, the first Vlan tree will be reloaded, the map wil be cleaned and finally the tree-like-explorer will be reinitialized.