Clement Jamin
f3c00442fd
Merge branch 'Mesh_3-parallel-cjamin-old' into Mesh_3-parallel-cjamin
2014-05-14 19:05:40 +02:00
Marc Glisse
897f585f12
Merge branch 'Kernel_d-rewrite-glisse-old' into Kernel_d-rewrite-glisse
...
Need the Interval_nt/long interoperability for Eigen.
2014-05-07 18:41:17 +02:00
Marc Glisse
24d396afb2
Micro-optimization: do the opaque call first so it does not hinder optimizers.
...
(don't expect to measure the difference)
2014-05-05 19:13:31 +02:00
Laurent Rineau
bcdfdf5335
Cleanup trailing spaces
2014-04-16 15:42:46 +02:00
Clement Jamin
239b6d0932
Merge branch 'STL_extension-Compact_container_as_vector-cjamin-old' into STL_extension-Compact_container_as_vector-cjamin
2014-04-16 14:14:24 +01:00
Laurent Rineau
a2ef3c10f0
Change the name of timestamp policies
2014-04-16 12:36:40 +02:00
Laurent Rineau
1396d65b48
Test the time stamper policy in the testsuite
2014-04-16 12:34:30 +02:00
Laurent Rineau
28e60a5460
Cosmetic changes
2014-04-16 12:33:57 +02:00
Laurent Rineau
36e61bf091
Fix the implementation of CC_ts_impl_aux
...
CC_ts_impl_aux is the new name of CC_ts_impl_impl
2014-04-16 12:24:14 +02:00
Laurent Rineau
cf3eee72ae
Add comments
2014-04-16 12:22:49 +02:00
Laurent Rineau
75c61a687d
New implementation of Has_timestamp
2014-04-15 18:07:23 +02:00
Jane Tournois
993541644c
move Has_timestamp to STL_extension/include/CGAL directory
...
to avoid that Compact_container depends on Mesh_3
2014-03-27 13:57:47 +01:00
Laurent Rineau
458dcbf96d
Add a comment that says why a warning must be disabled
2014-03-26 17:36:19 +01:00
Andreas Fabri
fa9d5b7f93
Suppress a warning issued by VC12
2014-03-26 09:16:02 +01:00
Laurent Rineau
b54be0ee3c
Update the copyright header
2014-03-25 16:42:23 +01:00
Marc Glisse
3168c851a1
Merge branch 'Kernel_d-rewrite-glisse-old' into Kernel_d-rewrite-glisse
...
Conflicts:
Kernel_d/doc_tex/Kernel_d/kernel_representation_d.tex
Kernel_d/doc_tex/Kernel_d_ref/Homogeneous_d.tex
Kernel_d/doc_tex/Kernel_d_ref/Kernel.tex
Kernel_d/doc_tex/Kernel_d_ref/main.tex
Resolved by dropping those files.
2014-03-12 12:38:08 +01:00
Clement Jamin
157cd0465f
Merge branch 'Mesh_3-parallel-cjamin-old' into Mesh_3-parallel-cjamin
...
Conflicts:
Mesh_3/demo/Mesh_3/Mesh_3_optimization_plugin_cgal_code.cpp
Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h
Mesh_3/include/CGAL/Mesh_3/C3T3_helpers.h
Mesh_3/include/CGAL/Mesh_3/Mesh_complex_3_in_triangulation_3_base.h
Mesh_3/include/CGAL/Mesh_3/Mesh_global_optimizer.h
Mesh_3/include/CGAL/Mesh_3/Sliver_perturber.h
Mesh_3/include/CGAL/Mesh_3/Slivers_exuder.h
Mesh_3/include/CGAL/Mesh_3/Triangulation_helpers.h
Mesh_3/include/CGAL/Mesh_3/config.h
Mesh_3/include/CGAL/Mesh_3/vertex_perturbation.h
Mesh_3/include/CGAL/Polyhedral_mesh_domain_3.h
Mesh_3/include/CGAL/exude_mesh_3.h
Mesh_3/test/Mesh_3/test_meshing_utilities.h
Triangulation_3/include/CGAL/Triangulation_cell_base_with_circumcenter_3.h
2014-03-10 17:01:03 +01:00
Jane Tournois
6af720cde8
remove useless typename(s)
2014-02-21 17:14:13 +01:00
Jane Tournois
9d19ac0f96
add a "less" function to CGAL_time_stamper
...
and handle null pointers given to comparison
it is necessary for example in Triangulation_3::remove_3D
2014-02-21 14:41:41 +01:00
Jane Tournois
22153ac273
make private the time_stamp_ variable
...
and add time_stamp() and set_time_stamp() methods everywhere
2014-02-20 16:18:49 +01:00
Jane Tournois
0740b3652f
add class Has_timestamp not to modify the API of Compact_container
...
- use the Has_timestamp operator in Compact_container
- add partial specialization to classes that need the time stamp (i.e.
Mesh_vertex_base, Compact_mesh_cell_base_3 and Mesh_cell_base_3)
- remove "ts" from classes where they were actually needed for compilation
purpose only (i.e. Kd_tree_node and Triangulation_ds_cell_base_3)
- rename "ts" to time_stamp_
2014-02-20 15:53:36 +01:00
Jane Tournois
b3eccc5905
determinism : add a template parameter to Compact_container
...
we add a template parameter to Compact_container that is able to
set and get the "time stamps" stored in Vertex_handle, Cell_handle etc.
We previously made sure that these pointers are always compared using
the operator< of CC_iterator, inside Compact_container.h
2014-02-18 17:25:50 +01:00
Jane Tournois
6db28ed43d
move ts from Tds to Compact_container
...
Tds now is back to its original version (not different from master)
2014-02-14 17:15:33 +01:00
Andreas Fabri
83546c53b1
Add a time stamp in vertices and cells of triangulations and polyhedra
...
and use this for operator< of handles in order to make mesh generation
deterministic
2014-02-13 19:46:34 +01:00
Laurent Rineau
da3d641efe
Add comments to #ifndef/endif
2014-01-31 16:50:20 +01:00
Laurent Rineau
3ed92e1c1a
Merge branch 'STL_Extension-Boolean_tag_Boost_Integral_Constant-lrineau'
...
Small feature:
cgal.org/wiki/Features/Small_Features/Boolean_tag_is_a_Boost_Integral_Constant
Now CGAL::Boolean_tag<true> and CGAL::Boolean_tag<true> are model of the
Boost concept "Integral Constant".
Tested in CGAL-4.4-Ic-84.
2014-01-09 17:54:28 +01:00
Clement Jamin
c81531bc80
Oops, I removed a line by mistake
2013-12-20 15:11:36 +01:00
Clement Jamin
28c5fde142
Add an increment policy to the Compact_container, and an operator[]
2013-12-20 15:03:37 +01:00
Sébastien Loriot
59f476b5b4
Merge branch 'STL_Extension-fix_make_sorted_pair-local'
...
Bug-fix when using make_sorted_pair on different types
Successfully tested in CGAL-4.4-Ic-62
Approved by the release manager
2013-12-20 08:44:23 +01:00
Sébastien Loriot
3adb58e046
better support of heterogeneous but compatible types
2013-12-17 20:37:19 +01:00
Clement Jamin
5d1eacf16f
rename get_erase_counter => erase_counter
...
And add it to the concept ObjectWithEraseCounter
2013-12-12 07:23:07 +01:00
Laurent Rineau
dc6c20cfdb
merge branch origin/Fix_leak-STL_Extension-GF
...
Remove memory leaks detected by AddressSanitizer.
Tested in CGAL-4.4-Ic-54 and CGAL-4.4-Ic-55.
Approved by the release manager.
2013-12-11 13:42:31 +01:00
Marc Glisse
8ddf8255d5
Merge branch 'Kernel_d-rewrite-glisse-old' into Kernel_d-rewrite-glisse
...
Hopefully the doc will be easier to build this way.
2013-11-23 12:34:18 +01:00
Clement Jamin
ec8e949d21
Merge branch 'Mesh_3-parallel-cjamin-old' into Mesh_3-parallel-cjamin
2013-11-21 10:50:55 +01:00
Marc Glisse
b319b31825
Assume refcount>0 when copying.
...
Hopefully it will help compilers understand that destructing a copy
can't bring the counter to 0.
2013-11-16 12:14:44 +01:00
Andreas Fabri
d8da1137cc
Fix a memory leak in Handle_with_policy:
...
A rep that points to another rep is like a handle
So if such a rep gets deleted the reference counter must be decremented
2013-11-15 16:20:01 +01:00
Andreas Fabri
61298d3925
Fix memory leak in Compact_container::merge()
...
We forgot to merge all_items
2013-11-08 13:55:40 +01:00
Sébastien Loriot
fd0e7756d5
add missing include
...
trivial bugfix
2013-10-29 13:05:44 +01:00
Sébastien Loriot
5f9ab81512
add the function make_sorted_pair
2013-10-18 10:44:54 -07:00
Sébastien Loriot
6a30252a82
remove not needed include directive
2013-10-18 09:22:14 -07:00
Clement Jamin
6b65ad71da
Changes in the "lock data structure" concept and models
...
The concept is now much more generic (SurjectiveLockDataStructure).
The names have been changed accordingly.
2013-10-16 12:17:56 +02:00
Clement Jamin
29525dfcb7
Back-quotes for could_lock_zone and true + minor fixes + replace 0 by NULL
2013-10-15 10:27:35 +02:00
Clement Jamin
a199ec9332
Rename params
2013-10-14 18:07:50 +02:00
Clement Jamin
e03b9aa762
get_cc_iterator => cc_iterator
2013-10-14 17:50:37 +02:00
Clement Jamin
5ff923bcfb
Bug fix: use the right namespace (CCC_internal)
2013-10-02 10:48:59 +02:00
Clement Jamin
2706cbfeff
Compact_container: erase counter strategy is now automatically deduced from T.
...
If the T::increment_erase_counter() function exists, then the erase counter
value will be updated by the Compact_container.
2013-09-30 18:25:41 +02:00
Clement Jamin
41929ed520
Merge branch 'Mesh_3-parallel-cjamin-old' into Mesh_3-parallel-cjamin
...
Conflicts:
Mesh_3/doc/Mesh_3/Concepts/MeshCellBase_3.h
Mesh_3/dont_submit
Triangulation_3/doc/TDS_3/CGAL/Triangulation_data_structure_3.h
Triangulation_3/doc/TDS_3/Concepts/TriangulationDataStructure_3.h
Triangulation_3/doc/Triangulation_3/CGAL/Delaunay_triangulation_3.h
Triangulation_3/doc/Triangulation_3/CGAL/Regular_triangulation_3.h
Triangulation_3/doc/Triangulation_3/CGAL/Triangulation_3.h
Triangulation_3/doc/Triangulation_3/PackageDescription.txt
2013-09-25 11:47:43 +02:00
Andreas Fabri
6c547e5663
Mainly added includes
2013-09-13 22:24:30 +02:00
Andreas Fabri
4a9be1f608
put the 'deprecated' macro at the right spot and add a testsiuite
2013-09-10 11:37:08 +02:00
Laurent Rineau
224a54303a
Make Tag_true and Tag_false be models of the Boost Integral Constant model
...
http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html
2013-08-27 17:07:24 +02:00
Marc Glisse
7c574d3dd8
Rename Filtered_predicate since it isn't compatible with the old version.
2013-07-22 14:23:08 +02:00
Marc Glisse
dafdb45786
Move is_iterator changes back to the original file.
2013-07-19 21:55:34 +02:00
Clement Jamin
838439b038
Merge branch 'Mesh_3-parallel-cjamin-old' into Mesh_3-parallel-cjamin
...
Conflicts:
Bounding_volumes/doc/Bounding_volumes/CGAL/Approximate_min_ellipsoid_d.h
Installation/cmake/modules/FindTBB.cmake
Installation/cmake/modules/UseTBB.cmake
Mesh_3/doc/Mesh_3/CGAL/Mesh_triangulation_3.h
Mesh_3/doc/Mesh_3/Mesh_3.txt
Mesh_3/include/CGAL/Mesh_triangulation_3.h
Surface_mesher/doc/Surface_mesher/Surface_mesher.txt
2013-07-11 09:58:51 +02:00
Clement Jamin
8b0edee1f4
Merge branch 'concurrency_in_cgal-cjamin-old' into concurrency_in_cgal-cjamin
2013-07-03 17:17:34 +02:00
Clement Jamin
206b20bc15
Merge branch 'Mesh_3-parallel-cjamin-old' into Mesh_3-parallel-cjamin
2013-07-02 17:37:50 +02:00
Clement Jamin
119675c970
Keep a copy of the bbox
2013-07-02 12:53:34 +02:00
Clement Jamin
44355c9f11
Rename get_cc_handle => get_cc_iterator
2013-06-27 17:00:00 +02:00
Clement Jamin
c8afb5e76a
Use of an std::vector instead of a dynamic array
2013-06-27 14:01:52 +02:00
Sébastien Loriot
c09ec2beaa
Merge branch 'Kernel-replace_object-pmoeller'
...
Successfully tested in CGAL-4.3-Ic-59
Approved by the release manager
Conflicts:
Kernel_23/doc/Kernel_23/CGAL/intersections.h
Kernel_23/doc_tex/Kernel_23_ref/intersection.tex
Kernel_d/doc/Kernel_d/Kernel_d.txt
STL_Extension/doc/STL_Extension/CGAL/iterator.h
2013-06-14 14:26:05 +02:00
Sébastien Loriot
b30d3daa2b
do not use exception in Object::assign. g++3.4 produces a segfault with -O2
2013-06-12 17:39:31 +02:00
Clement Jamin
bc360c8b13
Changes for GCC compilation + removed some trailing spaces
2013-06-07 17:40:53 +02:00
Clement Jamin
0e51e92656
Introduces a new CC_safe_handle class
...
Helper class which embed a `Compact_container` (or `Concurrent_compact_container`) iterator and is able to know if the pointee has been erased since the creation of the `CC_safe_handle` instance.
2013-06-06 16:49:23 +02:00
Sébastien Loriot
0c9656f553
add missing overload of operator= if EDG is defined
2013-06-04 16:53:05 +02:00
Sébastien Loriot
2997e8ae08
Dispatch_(or_drop_)output_iterator<V,O> now accepts a tuple V put in it ...
...
...and makes the correct dispatch to the output iterators in O
2013-05-31 17:20:47 +02:00
Clement Jamin
bbb5fec836
The Parallel_tag inherits Sequential_tag
2013-05-31 10:44:41 +02:00
Clement Jamin
81f9c675c5
P3::x/y/z() functions can now be any model of the concept of RealEmbeddable
2013-05-30 13:38:58 +02:00
Clement Jamin
f5fae5ab23
Smaller tag names + removed "Tag_non_blocking_with_mutexes" from documentation
2013-05-28 15:38:20 +02:00
Clement Jamin
127926aa14
Proof-reading + minor changes
...
Renamed unlock_all_tls_locked_locations => unlock_all_points_locked_by_this_thread
2013-05-28 15:07:20 +02:00
Clement Jamin
4a3a43d0e6
Minor fix + output
2013-05-23 17:48:32 +02:00
Clement Jamin
3a4caaaa1c
Changed the place of the erase counters.
...
Changed Compact_container_strategy_XXX::Uses_erase_counter type + moved the erase counters from Triangulation_ds_xxx_base_3 to Mesh_xxx_base_3.
2013-04-16 15:31:36 +02:00
Clement Jamin
2c2e1e3d7d
Code factorization + "manual" min/max for slightly better performance
2013-03-29 17:14:50 +01:00
Clement Jamin
1d3205942a
It's a bit faster not to use min/max to compute grid cell coords
2013-03-27 17:49:24 +01:00
Andreas Fabri
8a45fcea5a
Merge branch 'OLD' into Triangulation_2-NewPolylineConstraint-GF
...
Conflicts:
Triangulation_2/doc/Triangulation_2/Triangulation_2.txt
2013-03-21 13:41:53 +01:00
Sébastien Loriot
d6905c61be
Merge branch 'Kernel-replace_object-pmoeller-old' into Kernel-replace_object-pmoeller
...
Conflicts:
AABB_tree/include/CGAL/AABB_tree.h
Circular_kernel_2/include/CGAL/Circular_kernel_2/internal_functions_on_line_arc_2.h
Intersections_3/include/CGAL/Intersections_3/intersection_3_1_impl.h
Kernel_23/doc/Kernel_23/CGAL/intersections.h
Kernel_23/doc/Kernel_23/Concepts/FunctionObjectConcepts.h
STL_Extension/doc/STL_Extension/CGAL/iterator.h
2013-03-14 10:29:31 +01:00
Clement Jamin
b12a5e3c59
Implemented the "merge" function in the Concurrent_compact_container
2013-03-12 17:00:54 +01:00
Clement Jamin
6616582b14
Replaced tabs with spaces
2013-03-12 15:40:25 +01:00
Clement Jamin
8e800fdece
Replaced tabs with spaces
2013-03-12 15:39:25 +01:00
Clement Jamin
cad7496099
Removed "merge" and "reserve" since they are not implemented
2013-03-11 18:43:10 +01:00
Clement Jamin
1f0e994a00
Renamed a few functions + tabs to spaces conversion + benchmark output + minor changes
2013-03-11 15:46:27 +01:00
Clement Jamin
a7cfd06598
Replaced the unused pair<bool,int> returned by try_lock by a simple bool.
2013-03-08 16:47:37 +01:00
Clement Jamin
2796e63b86
Minor fix: "Base" doesn't need to be public.
2013-03-08 16:38:16 +01:00
Clement Jamin
3eae2927e7
Merge branch 'Mesh_3-parallel-cjamin-old' into Mesh_3-parallel-cjamin
2013-03-04 15:50:57 +01:00
Clement Jamin
2263fdf765
Clean-up
2013-02-28 15:05:35 +01:00
Clement Jamin
ab25d848b1
Moved the "no_spin" function parameter to a template parameter.
2013-02-22 15:47:32 +01:00
Clement Jamin
64a624c168
Removed some useless "virtual" + bugfix for the non-blocking specialization classes.
2013-02-22 13:42:18 +01:00
Laurent Rineau
2d8da664a3
Merge branch 'CGAL-fix_warnings-gdamiand'
...
Conflicts:
.gitignore
Skin_surface_3/examples/Skin_surface_3/CMakeLists.txt
2013-02-22 13:02:37 +01:00
Laurent Rineau
3f894697bc
New macros CGAL_assume(EX) and CGAL_assume_code(CODE)
...
CGAL_assume(EX) is like CGAL_assertion, but is not disabled in release
mode. In debug mode, it is similar to CGAL_assertion(). In release mode, it
uses builtins of the compilateur, like the MSVC __assume or the g++/clang
__builtin_unreachable to give an hint to the compiler that some situation
in the code cannot happen.
2013-02-20 18:34:15 +01:00
Clement Jamin
dac0e1c104
Moved Spatial_grid_lock_data_structure_3.h to STL_Extension
2013-02-18 16:44:00 +01:00
Clement Jamin
bce43fbb8e
Improved the way parallelism is handle in Mesh_3/Triangulation_3
...
Added a better support for parallelism in Triangulation_3.
Simplified how to enable/disable concurrency in Mesh_3.
Moved the Compact_container stategies to a new file.
2013-02-15 18:07:43 +01:00
Laurent Rineau
d19578725b
Fix warnings
2013-02-07 18:15:23 +01:00
Laurent Rineau
29c05b900b
Mark BOOST_STATIC_ASSERT with 'CGAL_UNUSED'
...
In order to fix such a warning from g++-4.8:
warning: typedef ‘boost_static_assert_typedef_241’ locally defined but
not used [-Wunused-local-typedefs]
then:
- create one macro CGAL_UNUSED that is "__attribute__ ((__unused__))"
with g++ or empty otherwise,
- use it after BOOST_STATIC_ASSERT in the definition of
CGAL_static_assertion.
2013-02-07 18:15:23 +01:00
Clement Jamin
cd83c4680a
Tags for concurrency
2013-02-06 18:15:25 +01:00
Sébastien Loriot
93df4bd3d5
typo while replacing boost::result_of to cpp11::result_of
2013-02-04 19:53:56 +01:00
Sébastien Loriot
f0f34d45fa
workaround to force the usage of the tr1 implementation of result_of from boost
...
see http://www.boost.org/doc/libs/1_52_0/libs/utility/utility.htm#result_of
2013-02-04 11:30:28 +01:00
Andreas Fabri
f9cd5ec08a
Merge remote-tracking branch 'origin/Triangulation_2-NewPolylineConstraint-GF' into Triangulation_2-NewPolylineConstraint-GF
...
Conflicts:
.gitattributes
2013-01-21 14:33:33 +01:00
Philipp Möller
0f34f2a89e
Merge branch 'Maintenance-include-less-boost-pmoeller'
2012-12-21 09:44:18 +01:00
Sébastien Loriot
82b2ebc865
apply the cpp0x namespace renaming in all files
2012-12-19 11:33:17 +01:00
Philipp Möller
71ea8e6e22
Minimal boost includes
...
Replace type_traits.hpp and utility.hpp with the respective
fine-grained includes.
2012-12-14 18:13:59 +01:00
Philipp Möller
a9cdb27b78
Remove tautological precondition
2012-12-12 11:28:57 +01:00
Philipp Möller
728cfaa456
Remove CGAL::Overload
...
Equivalent and better functionality is provided by
http://www.boost.org/libs//functional/overloaded_function/doc/html/index.html
2012-12-07 18:00:46 +01:00