Any of these pointers can be set to
NULL
on input if the corresponding infor-
mation is not needed. Else, the reference to a dummy area can be provided,
where all unwanted data will be written.
This routine is useful to get the size of a graph read by means of the
SCOTCH
graphLoad
routine, in order to allocate auxiliary arrays of proper sizes. If the
whole structure of the graph is wanted, function
SCOTCH graphData
should
be preferred.
7.5.10
SCOTCH graphData
Synopsis
void SCOTCH graphData (const SCOTCH Graph *
grafptr,
SCOTCH Num *
baseptr,
SCOTCH Num *
vertptr,
SCOTCH Num **
verttab,
SCOTCH Num **
vendtab,
SCOTCH Num **
velotab,
SCOTCH Num **
vlbltab,
SCOTCH Num *
edgeptr,
SCOTCH Num **
edgetab,
SCOTCH Num **
edlotab)
scotchfgraphdata (doubleprecision (*)
grafdat,
integer*
num
(*)
indxtab,
integer*
num
baseval,
integer*
num
vertnbr,
integer*
idx
vertidx,
integer*
idx
vendidx,
integer*
idx
veloidx,
integer*
idx
vlblidx,
integer*
num
edgenbr,
integer*
idx
edgeidx,
integer*
num
edloidx)
Description
The
SCOTCH graphData
routine is the dual of the
SCOTCH graphBuild
routine.
It is a multiple accessor that returns scalar values and array references.
baseptr
is the pointer to a location that will hold the graph base value for
index arrays (typically 0 for structures built from C and 1 for structures built
from Fortran).
vertptr
is the pointer to a location that will hold the number
of vertices.
verttab
is the pointer to a location that will hold the reference
to the adjacency index array, of size
*vertptr
+ 1 if the adjacency array
is compact, or of size
*vertptr
else.
vendtab
is the pointer to a location
that will hold the reference to the adjacency end index array, and is equal to
verttab
+ 1 if the adjacency array is compact.
velotab
is the pointer to a
location that will hold the reference to the vertex load array, of size
*vertptr
.
vlbltab
is the pointer to a location that will hold the reference to the vertex
label array, of size
vertnbr
.
edgeptr
is the pointer to a location that will
82