|
Boost : |
From: Jeremy Siek (jsiek_at_[hidden])
Date: 2001-07-10 09:51:52
Hi Asger,
Yes, there was a recent change to the interface to dijkstra's algorithm,
and it looks like I forgot some of the documentation dependencies that
needed to be updated. Thanks for pointing those out! I've checked in the
changes to fix this.
Note that the example source files in the /example directory are
up-to-date, like example/dijkstra.cpp.
Ciao,
Jeremy
On Tue, 10 Jul 2001, Asger Alstrup Nielsen wrote:
> and the other day, I decided to port my application to the latest Boost
> version.
>
> However, I have given up now, because I've ran into too many problems.
> I don't know how to solve many of them, because the documentation does
> not help me.
> It simply seems obsolete in many places.
>
> The most problems appear in the context of examples that show how to use
> dijkstra_shortest_paths. I think it would be a good idea to review all
> of those places.
>
> For instance, it is not clear to me which visitor to use together with
> Dijkstra. The documentation talks about the ucs_visitor, but that does
> not seem to work. These are the errors I get when I try to derive from
> the ucs_visitor:
>
> C:\BOOST\boost/graph/uniform_cost_search.hpp(173) : error C2146: syntax
> error : missing ';' before identifier 'm_predecessor'
> C:\BOOST\boost/graph/uniform_cost_search.hpp(178) : see
> reference to class template instantiation
> 'boost::detail::ucs_bfs_visitor<UniformCostVisitor,UpdatableQueue,Weight
> Map,DistanceMap,BinaryFunction,BinaryPredicate>' being compiled
> C:\BOOST\boost/graph/uniform_cost_search.hpp(173) : error C2501:
> 'PredecessorMap' : missing storage-class or type specifiers
> C:\BOOST\boost/graph/uniform_cost_search.hpp(178) : see
> reference to class template instantiation
> 'boost::detail::ucs_bfs_visitor<UniformCostVisitor,UpdatableQueue,Weight
> Map,DistanceMap,BinaryFunction,BinaryPredicate>' being compiled
> C:\BOOST\boost/graph/uniform_cost_search.hpp(173) : error C2501:
> 'm_predecessor' : missing storage-class or type specifiers
> C:\BOOST\boost/graph/uniform_cost_search.hpp(178) : see
> reference to class template instantiation
> 'boost::detail::ucs_bfs_visitor<UniformCostVisitor,UpdatableQueue,Weight
> Map,DistanceMap,BinaryFunction,BinaryPredicate>' being compiled
>
> On the other hand, there is a dijkstra_visitor in the code, which at
> least can compile. But that one is not documented.
>
> Sigh.
>
> Here's a list of the problems in the documentation, I have identified so
> far:
>
> quick_tour.html
> ---------------
> Section "Adding some color to your graph":
> "...property map object for an internal property."
> ->
> "...property map object for an internal stored property."
>
> Section "Extending algorithms with visitors":
> "...the visitor we create must be a (a UniformCostVisitor)."
> ->
> ?
>
> In the code example, an #include is missing.
> Also, should the visitor derive from ucs_visitor?
> It seems there is a thing called dijkstra_visitor now,
> although I can't find the documentation for that.
>
> The paragraph after the code snippet talks about an
> edge_filter, explore methods and other stuff that does
> not appear in the code.
>
> The third code snippet calls a version of
> dijkstra_shortest_paths that does not seem to exist
> anymore.
>
>
> using_property_maps.html
> ------------------------
>
> Section "Interior properties":
> "...the second argument is the graph object. ."
> ->
> "...the second argument is the graph object."
>
> Once again, a call to Dijkstra seems wrong. The last
> paragraphs seem obsolete, because there is only one
> version of Dijkstra now.
>
> kevin_bacon.html
> ----------------
>
> Section "Applying shortest paths":
> "The documentation for variant 4 of dijkstra_shortest_paths..."
> seems obsolete.
>
> At the moment, I get this compile error:
>
> C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\limits(61) : error
> C2440: 'type cast' : cannot convert from 'const int' to 'struct
> boost::detail::error_property_not_found'
> No constructor could take the source type, or constructor
> overload resolution was ambiguous
> C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\limits(61)
> : while compiling class-template member function 'struct
> boost::detail::error_property_not_found __cdecl
> std::numeric_limits<struct
> boost::detail::error_property_not_found>::max(void)'
>
> and I've given up. I realize that I might be missing a property map in
> my graph, or in the invocation of dijkstra, but which?
>
> Thank you,
>
> Asger Alstrup Nielsen
>
>
> Info: http://www.boost.org Unsubscribe: <mailto:boost-unsubscribe_at_[hidden]>
>
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>
>
----------------------------------------------------------------------
Jeremy Siek www: http://www.lsc.nd.edu/~jsiek/
Ph.D. Candidate, IU B'ton email: jsiek_at_[hidden]
Summer Manager, AT&T Research phone: (973) 360-8185
----------------------------------------------------------------------
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk