2
0
mirror of https://github.com/boostorg/graph.git synced 2026-01-30 20:02:12 +00:00
Commit Graph

1620 Commits

Author SHA1 Message Date
akumta
f5bc5e8504 update for ticket #12526 (#77)
Thanks for the patch.
2016-10-31 14:05:52 -06:00
Matt Barr
387bcb3d72 Add degree to reverse_graph (#78)
degree is required for BidirectionalGraphConcept.
Also adds the concept check to the reverse_graph unit test.
2016-10-31 14:03:54 -06:00
Murray Cumming
0d3be12b42 random.hpp: weighted_random_out_edge(): Add missing return. (#74)
This should avoid a compiler warning. For instance:
http://beta.boost.org/development/tests/develop/output/GLIS-homo-impi-graph-intel-linux-warnings.html#cycle_ratio_tests

Looks good, thanks.
2016-08-09 19:51:39 -06:00
Murray Cumming
2f8b0897aa bc_clustering: Remove an unused typedef. (#66)
Thanks.
2016-07-16 17:08:04 -06:00
Murray Cumming
e4aa48bc4b tree_traits: Add include for boost::tie().
This lets examples/graph_as_tree compile.
2016-07-14 18:10:16 +03:00
Maël Valais
15872fe070 Fix #11374 and #12038: issues with find_flow_cost(), bundled properties and named parameters (#61)
* trac 11374: find_flow_cost() not working with bundled properties.

When using bundled for Weight and Cost properties, find_flow_cost() coudln't work because the properties had been "hard coded" instead of using generic types.

Fixes https://svn.boost.org/trac/boost/ticket/11374

* trac 12038: max-flow algorithms not working with named parameters.

The named parameter "Capacity" was not working. I just had to reverse the order of get_param_type parameters.

Here are the max-flow algorithms that are curretly not working with the named parameter "Capacity":
- edmonds_karp_max_flow,
- push_relabel_max_flow,
- boykov_kolmogorov_max_flow.

Fixes https://svn.boost.org/trac/boost/ticket/12038

* trac 11374: find_flow_cost() not working with named parameters and bundled properties at the same time.

When using bundled properties as well as named parameters, there was an error.

What happened is that the "named parameters" version of find_flow_cost() was not using a generic return value, hence the error.

Also, the return value_type was using edge_capacity_value instead of edge_weight_value (which is the type of a flow cost).

I fixed it using the trick used for edmonds_karp_max_flow(): add `edge_weight_value` to named_function_params.hpp.

* Unit test find_flow_cost() with bundled properties & named params.

-> unit tests for trac 11374

I used the existing min_cost_max_flow_utils.hpp, but I had to make the graph of getSampleGraph() more generic.

In the first place, I wanted to make a compile-only test but I also made
the test runnable so we check that
- find_flow_cost works() correctly with bundled properties
- successive_shortest_path_nonnegative_weights() also works with bundled properties

To run this test, this is a bit painful...
I had to run the entire graph-related tests.
- I commented the other tests except for graph in ./status/Jamfile.v2
- in this same dir, I ran `../b2`

One issue though: csr_graph_test seems to be broken on my boost copy, I may have an issue with updating the submodules or something...

* Unit test edmond_karp_max_flow with named params & bundled properties.

-> unit tests for trac 12038

As the previous commit, I rely on min_cost_max_flow_utils.hpp.

And I also made a runnable test instead of a simple "compile-time" test.

* Indented with 2 spaces instead of tabs

Thanks for the patch!
2016-05-02 11:11:23 -06:00
Justin Viiret
976e524b59 Make lengauer_tarjan_dominator_tree use indexMap (#49)
Pass the indexMap parameter through to the dominator_visitor and use it
instead of get(vertex_index, g). This allows this algorithm to be used
for graphs without a vertex_index property.

Addresses bug #11742.
2016-05-01 17:52:37 -06:00
K. Noel Belcourt
677ba4b1e6 Remove unused member variable. 2016-05-01 16:14:28 -06:00
K. Noel Belcourt
400e8b5904 Fix a stack variable bound to member reference, a concept
checking variable that was unused triggering a warning,
and a documentation typo.
2016-05-01 16:06:24 -06:00
coderakki
06f304656c Update kamada_kawai_spring_layout.hpp (#53) 2016-05-01 15:42:15 -06:00
Alexander Lauser
ee8b7c377d Fixed bug 10231 partly: If finish_edge was called, then now correctly. (#16)
This appears to be fixed, we may have to patch this to ensure there's no backward compatibility issues with older compilers.  Thanks for the bug report and patch.

The bug that it never gets called with the current construction remains.
2016-05-01 14:00:19 -06:00
K. Noel Belcourt
08453c109a Revert "removed an unused function (#39)"
This reverts commit 655ce30eb3.
2016-04-26 10:54:43 -06:00
Mads Jensen
655ce30eb3 removed an unused function (#39)
The C++ standard deprecates use of <stdio.h>, <stdlib.h> etc., and suggests using <cstdio>, <cstdlib> etc.

Some trailing whitespace removed in affected files because of a setting in my editor

dead code surrounded by #if 0 ... #endif removed
2016-04-24 10:26:25 -06:00
K. Noel Belcourt
a61ae7153e Fix unused variable warning. 2016-04-23 22:25:57 -06:00
sehe
73136fa215 Fix labeled_graph constructors (#58)
* Fix labeled_graph constructors

* Wraparound bug leads to out-of-bounds addressing. 

    Seems obvious that `> 0` was meant (seeing the comments). 
    Also, if `vertices_size_type` is unsigned - which it usually (always?) is - the loop condition was never false.

 * Finally, one constructor didn't properly initialize the graph property

* Copy vertex property on add_vertex

Tested with clang on El Capitan, thanks!
2016-04-23 20:08:52 -06:00
felix
89b694c3f5 use graph_traits to access *_category types of a Graph (#54)
Tested with El Capitan and clang-darwin, thanks!
2016-04-23 16:31:01 -06:00
Arne B
b2526fbd16 Fixes bug 10449 (#57)
Without this patch it is not possible to call the copy constructor of directed_graph
2016-04-23 16:15:42 -06:00
Jakob Lykke Andersen
50bfd8dad0 Add missing check for 'degree' in BidirectionalGraphConcept. Fix the concept checking class in the documentation for BidirectionalGraphConcept. Implementation of missing 'degree' function for filtered_graph. (#29)
Thanks for the patch.
2016-04-23 12:27:51 -06:00
Jared Grubb
06f9e27fdf Fix Ticket #11133: Graph: using 'nil' as a local variable (#34)
Looks good, thanks.
2016-04-22 12:14:16 -06:00
Noel Belcourt
702c1110ad Merge pull request #44 from silolis/silolis-doc-patch-1
Fix doc spelling
2016-04-21 20:09:59 -06:00
Vladimir Prus
6197b9c549 Add missing include of <list>.
Thanks to Amit Prakash Ambasta for the report.
2015-12-07 13:55:07 +03:00
jzmaddock
1d5f43d9f6 Remove depricated type_traits usage. 2015-07-21 18:54:48 +01:00
Ola Nilsson
66f5121309 Fix doc spelling 2015-07-09 11:32:04 +02:00
Ahmed Charles
dfe2156c16 Match concept_def.hpp and concept_undef.hpp. 2015-05-21 10:37:26 +03:00
Marcel Raad
0fc1749bd7 Fix MSVC14 compile break
array_binary_tree_node::children_type::iterator pretends to be a bidirectional iterator but does not define operator--, which results in compile breaks with Visual C++ 2015.
2015-03-02 18:47:19 +01:00
K. Noel Belcourt
2573fbb9f0 Fix warning on const return by value. 2014-11-20 12:17:23 -07:00
K. Noel Belcourt
ffb6218f07 Fix uninitialized variable by setting to null_vertex.
Thanks to Lu Wang for reporting this.
2014-11-18 20:14:26 -07:00
Noel Belcourt
8c7c546942 Merge pull request #22 from mikael-s-persson/bugfix/ticket-10382-simplified-edge-move-copy
Simplified the stored-edge move and copy
2014-11-16 15:33:46 -07:00
Noel Belcourt
efa9fbd904 Merge pull request #15 from gatlex/bugfix/ticket-10222-root-map-broken
Fixed bug 10222.

I'll go ahead and add the test to the Jamfile, thanks for the test.
2014-11-11 20:57:50 -07:00
K. Noel Belcourt
441edc8e1c Fix macro logic for gcc 5, thanks to Alex Lauser
for pointing this out.
2014-11-11 12:18:44 -07:00
K. Noel Belcourt
f13ec6fa32 Condition TTI finish_edge on supported compilers.
If compiler doesn't support has_member_function for member
templates, use old TTI syntax to avoid compiler error.
Supported compilers are gcc 4.9 and newer, clang any platform,
and intel 12 and newer.
2014-11-10 21:39:40 -07:00
K. Noel Belcourt
8ece8fac15 Fix type traits so finish_edge is called when defined.
Changed the usage of TTI so that finish_edge is actually
called when defined.  Also regularized the finish_edge
signature so E is passed by value and G by const ref.
2014-11-08 17:01:01 -07:00
mikael
1740916e42 Simplified the move and copy constructor and assignment to avoid the maintenance nightmare of trying to rely on default functions. 2014-11-06 01:25:01 -05:00
Noel Belcourt
aba24ae80a Merge pull request #19 from josefcibulka/changes
Added graph property support to read_graphml

Well, it turns out there's already Boost.Test dependencies in Graph that I wasn't aware of.  Tested with Clang 6.0 on Darwin.
2014-11-02 15:23:14 -07:00
Lorenz Breidenbach
6e1ed79cbc Add missing #include of boost/functional/hash.hpp 2014-10-15 13:05:26 +02:00
Josef Cibulka
3a663cddc3 Merge remote-tracking branch 'myremote/master' into HEAD 2014-09-27 21:11:10 +02:00
Josef Cibulka
02fbda4272 Added reading of graph properties from graphml. 2014-09-26 16:28:22 +02:00
Eric Niebler
70a2630932 Merge pull request #14 from Lastique/patch-1
Fix compilation with gcc 4.4 in C++11 mode
2014-08-03 12:46:30 -07:00
Noel Belcourt
03dbf02a5a Fixes explicit operator() bool of Boost.Optional in c++11 mode.
Uses static_cast<const bool>() rather than explicit conversion.
2014-07-31 12:12:05 -06:00
Noel Belcourt
da78b282b4 Fix convertion to bool from vector boost::optional in c++0x mode. 2014-07-30 21:09:52 -06:00
Andrey Semashev
73c4e2e36c Resolve assignment operator ambiguity with gcc 4.4. 2014-07-30 23:37:09 +04:00
Andrey Semashev
0f4ecbcd4b Fix compilation with gcc 4.4 in C++11 mode
Add constructor and assignment operator implementations for gcc 4.4 since it does not support defaulted move constructors and assignment. The operators are also used for gcc 4.5 for good measure (I cannot test it but gcc 4.6 does not need this workaround).

Also the workaround is used for MSVC as well. The previous MSVC branch was incorrect since it did not invoke base class constructors and assignment.
2014-07-30 12:01:19 +04:00
Alexander Lauser
9160fdb45e Fixed bug 10222. 2014-07-28 19:07:08 +02:00
Marcel Raad
d6314a81bb Remove unused variables
This fixes compiler warnings about variable shadowing.
2014-07-12 13:32:16 +02:00
K. Noel Belcourt
9ce26cf6ea Fix graph_parallel test conversion from const optional<> to
a non-const bool.
2014-05-18 21:27:08 -06:00
Noel Belcourt
887de5e2e3 Merge pull request #10 from jhunold/vc12
Vc12 does not support default move constructors

Looks okay, assume you'll followup with any remaining failing vc12 tests.
2014-05-14 17:07:40 -06:00
BenPope
9b7fbc1a76 Add tests for member swap and fix undirected_graph<>::swap 2014-05-14 23:43:53 +08:00
Jürgen Hunold
fcaef7c4e3 Fix: vc12 doe not support defaulted move constructors, so provide an implementation. 2014-05-13 15:52:46 +02:00
BenPope
86bbbf563d Fix directed_graph::swap 2014-04-21 22:15:48 +08:00
Jeremiah Willcock
cb26ccf2ba Changed to use unique_ptr when C++11 is enabled; made other fixes to enable move semantics
[SVN r86733]
2013-11-17 02:18:42 +00:00