Tulip  4.6.0
Better Visualization Through Research
tlp::ConnectedTest Class Reference

#include <ConnectedTest.h>

+ Inheritance diagram for tlp::ConnectedTest:
+ Collaboration diagram for tlp::ConnectedTest:

List of all members.

Static Public Member Functions

static void computeConnectedComponents (const Graph *graph, std::vector< std::set< node > > &components)
static bool isConnected (const Graph *const graph)
static void makeConnected (Graph *graph, std::vector< edge > &addedEdges)
static unsigned int numberOfConnectedComponents (const Graph *const graph)

Detailed Description

Performs a test of connexity on the graph, and provides a function to make a graph connected. From Wikipedia: "A graph is said to be connected if every pair of vertices in the graph are connected." (i.e. there is a path between every pair of vertices).

Definition at line 37 of file ConnectedTest.h.


Member Function Documentation

static void tlp::ConnectedTest::computeConnectedComponents ( const Graph graph,
std::vector< std::set< node > > &  components 
) [static]

Computes the sets of connected components and stores the result in the components vector.

Parameters:
graphThe graph on which to compute connected components.
componentsThe components that were found. It is passed as a reference to avoid copying the data when returning.
Returns:
void
Note:
The components parameter can be returned with c++11 thanks to move constructors without performance loss, chenge this function once c++11 compilers are used.
static bool tlp::ConnectedTest::isConnected ( const Graph *const  graph) [static]

Checks if a graph is connected (i.e. there is a path between every pair of vertices).

Parameters:
graphThe graph to check.
Returns:
bool True if the graph is connected, false otherwise.
static void tlp::ConnectedTest::makeConnected ( Graph graph,
std::vector< edge > &  addedEdges 
) [static]

If the graph is not connected, adds edges to make it connected.

Parameters:
graphThe graph to make connected.
addedEdgesThe edges that were added to make it connected.
Returns:
void
static unsigned int tlp::ConnectedTest::numberOfConnectedComponents ( const Graph *const  graph) [static]

Gets the number of connected components in the graph.

Parameters:
graphThe graph in which to count the number of connected components.
Returns:
unsigned int The number of connected componments.
 All Classes Files Functions Variables Enumerations Enumerator Properties