Commit Graph

43 Commits

Author SHA1 Message Date
albert-github 301728a8a9 issue #7395 Improvement of layout of model relations
- Completed the cgalModels part
2023-07-09 12:43:36 +02:00
Sébastien Loriot 11a5b394b8 use Range::size() 2023-06-15 18:44:20 +02:00
Sébastien Loriot 8740b244a2 boost::distance -> std::distance
boost's version is working on std::pair but we decided to no longer
consider iterator pairs as ranges
2023-04-23 22:37:07 +02:00
Mael Rouxel-Labbé 590ddf8015 Various fixes for pmaps:
- Use `value_type` when the returned type is not a reference
- Enforce `reference = value_type` if the returned type is not
  a reference (to avoid `typename PM::reference r = get(m, k)`,
  which will take a ref to a temporary if the `reference`
  typedef is an actualy reference)
- Do not use `put_get_helper` if the property map is not a `lvalue`
  **mutable** property map: the `put()` is `map[k] = v`, which
  is broken if `operator[]` does not return a reference
- The concept `boost::lvalue_property_map_tag` requires `operator[](key)`,
  not a reference in `get(map, key)`. You can have a readable property map
  returning a reference through its `get(map, key)`, but if there is
  no `operator[]`, it's just a `boost::readable_property_map_tag`
- Some const correctness to avoid copying maps with state
  or heavy keys in `get(map, key)` / `put(map, key, value)`
- Base the category of a wrapping pmap on what it offers instead
  of just forwarding the base property map's category
- Tried to do something like mutable lvalue pmap:
  * `value_type& operator[](key&)`
  * `ref get(map, const key&)`
  * `put(map, const key&, const value_type&)`
  and non-mutable lvalue pmap:
  * `const value_type& operator[](const key&)`
  * `ref get(map, const key&)`
  but not everything fits properly...
2021-10-08 15:38:47 +02:00
Mael Rouxel-Labbé ebd65c9637 Use lower case for function doc starting with a verb (BGL/PMP) 2020-07-20 11:47:30 +02:00
Sébastien Loriot 2dd06eb296 add overload for point 2020-04-13 10:44:26 +02:00
Sébastien Loriot 620dfa40fc extra run of the script to remove tabs and trailing whitespaces 2020-03-27 08:37:32 +01:00
Sébastien Loriot 400ca78690 restrict properties for Dual
I totally removed the generic put as I don't see any
generic usage
2020-03-20 15:43:01 +01:00
Sébastien Loriot 52164b1fba First pass on removing license notice in header for LGPL files 2019-10-19 15:40:30 +02:00
Sébastien Loriot 7356421d80 introduce Commercial license SPDX tag 2019-10-19 12:15:19 +02:00
Sébastien Loriot 9bd9c68b83 update LGPL[23]+ and GPL[23]+ SPDX tags
ack -l --no-svg "SPDX-License-Identifier: GPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-3.0+/SPDX-License-Identifier: GPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-3.0+/SPDX-License-Identifier: LGPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: GPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-2.0+/SPDX-License-Identifier: GPL-2.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-2.0+/SPDX-License-Identifier: LGPL-2.0-or-later/"
2019-10-18 21:57:54 +02:00
Sébastien Loriot a5576cd3fb replace markdown subsections by \cgalHeading 2019-02-14 10:53:48 +01:00
Andreas Fabri 38b2e57b11 PMP 2018-01-17 17:59:35 +00:00
Sébastien Loriot 0698f79aff add SPDX identifier for files under the LGPL-3+ license 2017-11-12 10:17:50 +01:00
Mael Rouxel-Labbé 5a675961d4 Introduced the BGL Graph adaptors (Dual, seam_mesh, etc.) 2017-06-22 16:17:13 +02:00
Sébastien Loriot 82ff73da86 restore graph_traits specializations and fix warnings 2017-06-22 16:14:55 +02:00
Andreas Fabri d9fe196106 WIP 2017-06-22 16:12:26 +02:00
Andreas Fabri f7b826125b Add the possibility to pass the two vertices that are selected 2017-06-22 16:12:26 +02:00
Sébastien Loriot 6d3d570239 Merge remote-tracking branch 'cgal/releases/CGAL-4.9-branch' into HEAD 2017-03-16 09:57:17 +01:00
Andreas Fabri 58b4b81ccd fix in_edges() and out_edges() 2017-03-13 17:12:37 +01:00
Andreas Fabri 426ab99df7 BGL: Fix Dual 2017-03-13 14:01:19 +01:00
Andreas Fabri ca1f19b392 Package BGL: Add includes 2016-09-30 15:22:29 +02:00
Philipp Möller 5e05cb6205 Also use Key argument
Those functions trigger a hard error when a call such as
`get<XXX>(something)` is made. Using all template arguments makes it go
away, but why this is a hard error is still baffling.
2016-02-02 17:06:49 +01:00
Philipp Möller ed17a8f57d Add free dual function 2016-02-02 16:00:31 +01:00
Philipp Möller 44fdb662b0 Add documentation for members 2016-02-02 16:00:31 +01:00
Philipp Möller 9c0cc1319e Prevent use of other vertex/face properties 2016-02-02 16:00:31 +01:00
Philipp Möller b1deeabe56 More doc 2016-02-02 16:00:31 +01:00
Philipp Möller 9c9256da8c Add the overloads to fix face/vertex_index_t 2016-02-02 16:00:31 +01:00
Philipp Möller 7fc6441903 Add generic property forwarding 2016-02-02 16:00:31 +01:00
Philipp Möller 2b20ea5e92 Add missing graph functions 2016-02-02 16:00:31 +01:00
Philipp Möller b3cf47a81b Directly forward the traversal category 2016-02-02 16:00:31 +01:00
Philipp Möller 2a0e76a29f Add initial documentation 2016-02-02 16:00:31 +01:00
Sébastien Loriot ef2cef3eb4 use a wrapper to make sure the return type of get is instantiable
the pb encountered comes from get called on a variant
2015-03-17 16:20:37 +01:00
Sébastien Loriot 9cf0a3fd37 add missing license header 2015-03-17 16:20:37 +01:00
Sébastien Loriot 24c47ae95d add missing typenames 2015-02-16 14:55:14 +01:00
Andreas Fabri e155ff9a75 first version of keep_largest_connected_component 2015-02-16 12:49:40 +01:00
Sébastien Loriot ad744ee6bb fix typename position 2015-02-16 11:57:49 +01:00
Sébastien Loriot 837be0b84f fix of 10c08719 2015-02-16 11:54:32 +01:00
Sébastien Loriot e2d0d44f3c add missing typename's 2015-02-16 11:26:28 +01:00
Andreas Fabri 92e3482da4 Add high level function connected_component which uses boost::connected_component 2015-02-13 16:58:02 +01:00
Andreas Fabri 0d67ba64df improve example for connected_components of a graph and its dual 2015-02-12 15:34:05 +01:00
Andreas Fabri a41f54cc54 Add property map for Dual<> 2015-02-12 11:14:57 +01:00
Andreas Fabri b538707892 Add a Dual<Graph> class 2015-02-11 18:33:23 +01:00