GRASS Programmer's Manual  6.5.svn(2014)-r66266
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
components.c File Reference

Network Analysis library - graph componets. More...

#include <stdio.h>
#include <stdlib.h>
#include <grass/gis.h>
#include <grass/Vect.h>
#include <grass/glocale.h>
#include <grass/dgl/graph.h>
Include dependency graph for components.c:

Go to the source code of this file.

Functions

int NetA_weakly_connected_components (dglGraph_s *graph, int *component)
 Computes weekly connected components. More...
 
int NetA_strongly_connected_components (dglGraph_s *graph, int *component)
 Computes strongly connected components. More...
 

Detailed Description

Network Analysis library - graph componets.

Computes strongly and weakly connected components.

(C) 2009-2010 by Daniel Bundala, and the GRASS Development Team

This program is free software under the GNU General Public License (>=v2). Read the file COPYING that comes with GRASS for details.

Author
Daniel Bundala (Google Summer of Code 2009)

Definition in file components.c.

Function Documentation

int NetA_strongly_connected_components ( dglGraph_s graph,
int component 
)

Computes strongly connected components.

Parameters
graphinput graph
[out]componentlist of components
Returns
number of components
-1 on failure

Definition at line 97 of file components.c.

References dglEdgeGet_Id(), dglEdgeGet_Tail(), dglEdgeset_T_First(), dglEdgeset_T_Initialize(), dglEdgeset_T_Next(), dglEdgeset_T_Release(), dglGet_NodeCount(), dglGetNode(), dglNode_T_First(), dglNode_T_Initialize(), dglNode_T_Next(), dglNode_T_Release(), dglNodeGet_Id(), dglNodeGet_OutEdgeset(), G_fatal_error(), and G_free().

int NetA_weakly_connected_components ( dglGraph_s graph,
int component 
)

Computes weekly connected components.

Parameters
graphinput graph
[out]componentlist of components
Returns
number of components
-1 on failure

Definition at line 32 of file components.c.

References dglEdgeGet_Tail(), dglEdgeset_T_First(), dglEdgeset_T_Initialize(), dglEdgeset_T_Next(), dglEdgeset_T_Release(), dglGet_NodeCount(), dglGetNode(), dglNode_T_First(), dglNode_T_Initialize(), dglNode_T_Next(), dglNode_T_Release(), dglNodeGet_Id(), dglNodeGet_OutEdgeset(), G_fatal_error(), and G_free().