From: Krishna Padmasola (krishna_at_[hidden])
Date: 2000-10-19 01:27:32
Is it possible to make it work such that when VertexList=vecS,
VertexDescriptor() returns -1, and when VertexList=listS,
VertexDescriptor() returns 0? That way, it works transparently for the
user, and the default VertexDescriptor() will be an invalid descriptor,
regardless of the type of VertexList selector.
This would be quite useful, since vertex descriptor comparisons are
quite common in algorithms. Currently, I return a
pair<VertexDescriptor,bool> from several of my functions, but just
returning a VertexDescriptor would suffice, if one can check that it is
invalid (currently I need the bool to tell me if it is valid or not).
Thanks in advance,
> Hi John,
> In the case when using an adjacency_list with VertexList=vecS, you
> could initialize the predecessor array to -1.
> In the case when using an adjacency_list with VertexList=listS, you
> could initialize the predecessor array to 0 (null pointer).
> John Britton writes:
> > After performing a BFS which fills in a vector of Vertex predecessors, how
> > do I determine whether a given Vertex has a valid predecessor? Comparing
> > against a default constructed Vertex doesn't seem to work since the default
> > constructed Vertex apparently has an index of 0, and thus cannot be
> > differentiated from vertex( 0, G ).
> > Thanks,
> > John Britton
> > Very Important Engineer++
> > Peak Audio Inc.
> > 1790 30th Street, Suite 414
> > Boulder, CO 80301
> > 303.449.9337 x102
> > johnb_at_[hidden]
> > http://www.peakaudio.com/
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk