Sébastien Loriot
aae6c1ba95
add missing license/copyright and fix protection macro
2023-09-01 13:07:00 +02:00
Sébastien Loriot
28dc304676
Merge branch 'cgal/master'
2023-09-01 13:03:05 +02:00
JacksonCampolattaro
2d8f7d483d
Rename Properties.h for clarity
2023-08-30 15:32:38 +02:00
JacksonCampolattaro
1154524513
Ensure moved-from properties are reset
2023-06-22 14:09:38 +02:00
JacksonCampolattaro
9050fab7cb
Add a tiny unit test for point insertion & reservation, and fix the bug it catches
2023-06-20 10:41:13 +02:00
JacksonCampolattaro
497014022e
Fix join() behavior; mark all indices as active instead of inactive
2023-06-07 11:26:09 +02:00
JacksonCampolattaro
82dd686f4b
Adapted Point_set_3 to use the new property system
...
Garbage management is still done by the point set
2023-06-06 21:44:37 +02:00
JacksonCampolattaro
6e3db21299
Add iterators & convenience function for manipulating property list
2023-06-01 11:25:44 +02:00
JacksonCampolattaro
79c29db1fc
Fix issues with PLY loading, property_map() now returns an optional<>
2023-05-25 12:09:43 +02:00
JacksonCampolattaro
6c67aba15b
Update PLY file loading to support the new interface
2023-05-25 11:10:24 +02:00
JacksonCampolattaro
c066a18fe2
Fix issues with the simpler unit tests
2023-05-18 11:36:06 +02:00
JacksonCampolattaro
ac6fbf0467
Add partly-working adaptation of Surface_mesh to use the new Property map system
2023-05-17 16:49:46 +02:00
JacksonCampolattaro
c9bd102fee
Add _property suffix to methods which change the property list (& not the properties themselves)
2023-05-12 13:40:13 +02:00
JacksonCampolattaro
e48b56b1f1
Move property container to Property_map package
2023-05-12 13:31:27 +02:00
Sébastien Loriot
8e29e704be
factorize constructor
2023-04-23 22:37:07 +02:00
Sébastien Loriot
9242a810c4
Merge remote-tracking branch 'cgal/master' into Region_growing-revision-soesau
2023-02-07 11:31:55 +01:00
Sébastien Loriot
dbccebf7df
clean up doc and API of new property maps
2023-02-06 18:32:41 +01:00
Sébastien Loriot
1307e11ea9
remove code that was not documented
2023-01-26 11:49:58 +01:00
Sébastien Loriot
ee246c87c5
fix function name and add missing constructor
2023-01-25 17:08:27 +01:00
Sébastien Loriot
cc5b000728
use a new property map with more verbose name
2023-01-19 11:30:52 +01:00
Sébastien Loriot
15b55bd32f
avoid copying the iterator in case it is returned by reference
...
427e147c7f
2023-01-18 13:46:35 +01:00
Sébastien Loriot
cd76994056
rename property map and deprecated old name
2023-01-18 13:45:37 +01:00
Sébastien Loriot
427e147c7f
do not copy the iterator to avoid returning a temporary if Prevent_deref is used as Iter
2022-12-23 11:38:53 +01:00
albert-github
eed54a0ae5
spelling corrections
...
Some spelling corrections (Directories starting with `O`-`S` , first part),
some backward work
some forward work
2022-11-15 18:45:39 +01:00
Sven Oesau
80eb8601e6
Merge branch 'CGAL:master' into Region_growing-revision-soesau
2022-09-02 16:42:41 +02:00
Sébastien Loriot
2f6beec951
use T everywhere and fix forwarding
2022-08-09 22:22:02 +02:00
Sébastien Loriot
14a6da0840
fix return type
2022-08-05 15:28:37 +02:00
Sébastien Loriot
c5baff9473
add missing template parameter
2022-08-05 14:39:21 +02:00
Sébastien Loriot
8f07ed3207
correctly forward temporaries
2022-08-05 13:15:09 +02:00
Sébastien Loriot
1987ffcade
use reference type of the iterator
2022-08-05 11:21:40 +02:00
Sébastien Loriot
861588abe1
Merge 'sloriot/CGAL-std_type_traits' into master
2022-08-03 20:19:51 +02:00
Sébastien Loriot
17b9e439ec
WIP improvement on Point_set
...
--> line_fit
2022-07-21 15:51:42 +02:00
Sébastien Loriot
85bf2ef2b4
remove more conditional_ref from segment_set class
2022-07-19 15:28:05 +02:00
Laurent Rineau
371ce51842
Merge pull request #6667 from sloriot/CGAL-please_intel_2019
...
Please intel 2019 compiler
2022-06-29 09:50:48 +02:00
Sébastien Loriot
62936f8ee7
please intel 2019 compiler
2022-06-13 17:01:35 +02:00
Sébastien Loriot
5872413f37
remove boost is_same headers
2022-06-10 08:48:53 +02:00
Sébastien Loriot
3fa436459d
BOOST_MPL_ASSERT -> static_assert
2022-06-10 08:46:01 +02:00
Sébastien Loriot
4f5f8341cc
use std::enable_if_t
2022-06-10 07:37:53 +02:00
Sébastien Loriot
4ffc949199
replace boost::unordered by std::unordered
...
but in T3, Mesh_3, TDS_3, P3[TM]3
2022-02-03 19:11:12 +01:00
Laurent Rineau
da0ba6a4ea
Merge pull request #6169 from sloriot/PM-public_typdefs
...
Fix Or_pmap
2021-12-20 18:06:31 +01:00
Sébastien Loriot
1d36ae1a57
expose typedefs
2021-12-13 09:40:40 +01:00
Sébastien Loriot
833e51129f
really use the type of the returned expression
2021-11-10 11:31:42 +01:00
Sébastien Loriot
4eb1464aed
fix Identity_map mutability and fix CGAL code using it
2021-11-09 11:37:24 +01:00
Mael Rouxel-Labbé
d6a950078a
Further enhancements to the pmap binder's constructors
2021-10-20 15:07:34 +02:00
Mael Rouxel-Labbé
79fc493392
Add a default constructor to Property_map_binder
...
Needed for example if you need to default construct AABB traits
with external pmaps that are Property_map_binders
2021-10-19 16:08:30 +02:00
Mael Rouxel-Labbé
131242bb80
Merge branch 'PM-Fix_pmaps_reference_types-GF' into PM-Fix_pmaps_reference_types_5.3-GF
2021-10-12 09:29:23 +02:00
Mael Rouxel-Labbé
8166579e55
Merge branch 'PM-Fix_pmaps_reference_types-GF' into PM-Fix_pmaps_reference_types_master-GF
2021-10-11 19:58:07 +02:00
Mael Rouxel-Labbé
07948c7066
Constify the 'operator[]' of non-mutable lvalue pmaps with 'put()'s
2021-10-11 12:02:22 +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é
df560987a6
Whitespace & cleaning changes
2021-10-08 12:13:43 +02:00