Commit Graph

142 Commits

Author SHA1 Message Date
Laurent Rineau ae28ae8a31
Merge pull request #6289 from afabri/Hash_map-benchmark-GF 2022-04-01 10:17:40 +02:00
Andreas Fabri d9d85fbe3c Move member variable position in initializer list 2022-03-18 09:08:38 +01:00
Giles Bathgate 16bed97ec5 Remove sizing of hash tables in copy constructors, size just grows 2022-03-17 20:21:12 +00:00
Giles Bathgate 933604b1e6 Init hashtable size in SNC_structure 2022-03-11 21:27:32 +00:00
Giles Bathgate d7be0897d1 Add reserve method to chained_map/Unique_hash_map 2022-03-10 18:24:07 +00:00
Giles Bathgate c12b42bb5e Initalise table on first access 2022-03-10 18:24:07 +00:00
Giles Bathgate 7d0d6a06be Use minimum size of 32, default size 512 2022-03-10 18:24:07 +00:00
Giles Bathgate 4e79edebc6 double should be an int 2022-02-04 18:01:12 +00:00
Giles Bathgate eb7d36e8b3 Use tabulated output to easily compare results 2022-02-04 17:56:32 +00:00
Giles Bathgate 2527f17b17 Replace tabs with spaces 2022-02-03 18:08:41 +00:00
Giles Bathgate 2663794269 Include benchmark for lookups of non-exsistant vertices 2022-02-03 17:55:44 +00:00
Giles Bathgate 74290b7a0e Use reserve only when available 2022-02-02 20:18:45 +00:00
Andreas Fabri 1a9f620031 Restructure the code so that the timer is not permanently switched on and off 2022-02-01 07:21:06 +00:00
Andreas Fabri 04abcd9c95 Initialize the point to avoid a warning 2022-01-18 14:47:56 +00:00
Sébastien Loriot ab48f63e30 update latest cmake version tested 2021-11-09 10:58:47 +01: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é 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
Sébastien Loriot 47028cd184 automatically move data files in data dir + update paths
Done for OFF/OBJ/STL/XYZ/PWN/PLY
2021-10-04 09:42:49 +02:00
Sébastien Loriot cec93d0c9f special case for pointers 2021-05-27 14:36:55 +02:00
Sébastien Loriot 18ca811f7f hash value of handles use directly the address of the node 2021-05-27 12:36:17 +02:00
Sébastien Loriot 4e519a3c7a move documented IO functions in IO namespace 2021-05-05 13:15:37 +02:00
Maxime Gimeno c49152359c update max version of cmake and announce the new minimal in CHANGE.md 2021-04-15 15:08:54 +02:00
Maxime Gimeno 9c15f2c9dc Use FeatureSummary in the demo, and remove CGAL_FOUND 2020-08-04 12:46:17 +02:00
Sébastien Loriot 38789af55d Update branch from master after trailing whitespaces and tabs removal 2020-03-26 19:25:47 +01:00
Sébastien Loriot 8b153fb495 Merge branch 'cgal/releases/CGAL-5.0-branch'
whitespace+tab removal, merged with option -Xignore-space-change
2020-03-26 14:22:32 +01:00
Sébastien Loriot 0779373835 extra run of the script to remove tabs and trailing whitespaces
right after the  merge of 4.14 release branch

+ manual fix on one line in:
    * Arrangement_on_surface_2/include/CGAL/IO/Arr_text_formatter.h
    * .travis/generate_travis.sh
2020-03-26 14:16:06 +01:00
Sébastien Loriot 0a46621dc6 Merge branch 'cgal/releases/CGAL-4.14-branch'
whitespace+tab removal, merged with option -Xignore-all-space
2020-03-26 13:28:46 +01:00
Sébastien Loriot 590612a563 run the script to remove tabs and trailing whitespaces 2020-03-26 13:25:16 +01:00
Mael Rouxel-Labbé df43e3e950 Fix warning about discarding return values of nodiscarding functions 2020-02-11 08:57:02 +01:00
Mael Rouxel-Labbé e73b973b62 Use Parallel_if_available_tag to simplify code that used CGAL_LINKED_WITH_TBB 2019-11-20 12:24:54 +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 c0edb5ecaa remove CGAL_CXX11 macro usage 2019-07-08 11:42:17 +02:00
Laurent Rineau 4fbf00fb8a CMake>=3.13: opt for for new policies up to 3.15 2019-06-19 14:34:59 +02:00
Andreas Fabri 4581f1b7a8 Morte replacements 2019-06-05 08:39:55 +02:00
Laurent Rineau b8fe6b10ee Merge pull request #3804 from afabri/CGAL_tests_must_not_include_basic-GF
Do not include <CGAL/basic.h>
2019-05-21 16:37:01 +02:00
Sébastien Loriot d60f5645aa replace BOOST_FOREACH by c++ ranged-based for loop
some of the command used for the replacement:
ack --cpp  BOOST_FOREACH -l  | xargs sed -i -E "s/BOOST_FOREACH\(([a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack --cpp  BOOST_FOREACH -l  | xargs sed -i -E "s/BOOST_FOREACH\((const [a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack --cpp  BOOST_FOREACH -l  | xargs sed -i -E "s/BOOST_FOREACH\((const typename [a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack --cpp  BOOST_FOREACH -l  | xargs sed -i -E "s/BOOST_FOREACH\((typename [<>a-zA-Z_:&0-9]+)\s(\w+)\,/for(\1 \2 :/"
ack "boost/foreach.hpp" -l --cpp | xargs sed -i '/boost\/foreach.hpp>/d'
2019-03-29 13:22:15 +01:00
Andreas Fabri a1609350aa Remove #include<CGAL/basic.h> amd put what is needed if something is missing 2019-03-27 15:21:33 +01:00
Andreas Fabri e989b87dfe Distance, Generator, HDS, Convex_hull, Polyhedron, PCA 2019-02-14 10:39:56 +01:00
Guillaume Damiand 92ba7fa6c9 Update minimum cmake required version in all CMakeLists.txt 2018-10-18 14:49:23 +02:00
Guillaume Damiand 0bd9088b5a Remove all include( ) and include( CGAL_CreateSingleSourceCGALProgram ) in CMakeLists.txt; they are no more required. 2018-10-17 14:17:08 +02:00
Guillaume Damiand 7f09308d33 Remove all include_directories(BEFORE ../../include) in CMakeLists.txt 2018-10-17 13:07:22 +02:00
Mael Rouxel-Labbé 7ea3a8044e Merge branch 'Periodic_3_mesh_3-Feature-MBogdanov-old' into Periodic_3_mesh_3-Feature-MBogdanov 2018-06-05 14:39:18 +02:00
Andreas Fabri 991f3847e8 Do not include graph_traits_Polyhedron.h, properties_polyhedron.h and Polyhedron_iostream.h 2018-05-03 13:23:50 +02:00
Mael Rouxel-Labbé a0427ec756 Fixed abusing Triangulation_cell_base_3 for Delaunay triangulations
TriangulationCellBase_3 does not request a circumcenter;
DelaunayTriangulationCellBase_3 does.

Delaunay_triangulation_3 only compiled because
Triangulation_cell_base_3 (and Triangulation_ds_cell_base_3 !)
provided circumcenter() operators and DT3 inherited T3's TDS.

- The circumcenter() functions are removed where they shouldn't exist
- DT3 uses DT_cell_base_3 as cell base instead of T_cell_base_3
- Concepts/Classes that supposedly only required TriangulationCellBase_3
  and then built Delaunay triangulations with that (Alpha Shapes, etc.)
  are upgraded to request DelaunayTriangulationCellBase_3 (anyway, it
  wouldn't compile if you actually provided a model of
  TriangulationCellBase_3)
- Fixed various wrong templates in classes/concepts such as
  MeshVertexBase_3 not refining RegularTriangulationVertexBase_3
  and (only in the doc) defaulting to Triangulation_vertex_base_3
- Removed the deprecated class (for 4+ years) T_cell_base_with_circumcenter
2018-04-26 13:21:53 +02:00
Andreas Fabri c5cbd4a480 Fix typo; Remove unused typedef 2018-04-18 07:59:57 +01:00
Laurent Rineau 095c27e2be cosmetic changes 2018-04-17 17:14:19 +02:00
Andreas Fabri 97ac4d5f51 Exploit that construct is variadic 2018-04-17 14:15:07 +01:00