Rephrase doc of tparam ConcurrencyTag in hilbert_sort / spatial_sort

This commit is contained in:
Mael Rouxel-Labbé 2020-01-02 13:32:33 +01:00
parent ca098f58bf
commit dad8ab5d85
4 changed files with 20 additions and 14 deletions

View File

@ -5,9 +5,8 @@ namespace CGAL {
The function object `Hilbert_sort_2` sorts iterator ranges of
`Traits::Point_2` along a Hilbert curve by recursively subdividing
at the median
or the middle depending on the `PolicyTag`.
at the median or the middle, depending on the `PolicyTag` (see Section \ref sechilbert_sorting
for more information on the policies).
\tparam Traits must be a model of the concept `SpatialSortingTraits_2`.
@ -15,8 +14,10 @@ or the middle depending on the `PolicyTag`.
Possible values are \link CGAL::Hilbert_sort_median_policy `Hilbert_sort_median_policy` \endlink
(the default policy) or \link CGAL::Hilbert_sort_middle_policy `Hilbert_sort_middle_policy` \endlink.
\tparam ConcurrencyTag must be `Sequential_tag`, `Parallel_tag`, or `Parallel_if_available_tag. With parallelism
and TBB enabled, for the median policy up to four threads are used in parallel.
\tparam ConcurrencyTag enables sequential versus parallel algorithm.
Possible values are `Sequential_tag`, `Parallel_tag`, and `Parallel_if_available_tag`.
With parallelism enabled, sorting will be performed using up to four threads.
Parallel sorting is available only when the median strategy policy (the default policy) is used.
*/
template< typename Traits, typename PolicyTag, typename ConcurrencyTag = Sequential_tag >
class Hilbert_sort_2 {

View File

@ -5,7 +5,8 @@ namespace CGAL {
The function object `Hilbert_sort_3` sorts iterator ranges of
`Traits::Point_3` along a Hilbert curve by recursively subdividing at the median
or the middle depending on the `PolicyTag`.
or the middle, depending on the `PolicyTag`(see Section \ref sechilbert_sorting
for more information on the policies).
\tparam Traits must be a model of the concept `SpatialSortingTraits_3`.
@ -13,8 +14,10 @@ or the middle depending on the `PolicyTag`.
Possible values are \link CGAL::Hilbert_sort_median_policy `Hilbert_sort_median_policy` \endlink
(the default policy) or \link CGAL::Hilbert_sort_middle_policy `Hilbert_sort_middle_policy` \endlink.
\tparam ConcurrencyTag must be `Sequential_tag`,`Parallel_tag`, or `Parallel_if_available_tag`. With parallelism
and TBB enabled, for the median policy up to eight threads are used in parallel.
\tparam ConcurrencyTag enables sequential versus parallel algorithm.
Possible values are `Sequential_tag`, `Parallel_tag`, and `Parallel_if_available_tag`.
With parallelism enabled, sorting will be performed using up to eight threads.
Parallel sorting is available only when the median strategy policy (the default policy) is used.
*/
template< typename Traits, typename PolicyTag, typename ConcurrencyTag = Sequential_tag >
class Hilbert_sort_3 {

View File

@ -9,12 +9,12 @@ If input points are not close to the input sphere, this function still works, bu
It sorts the range `[begin, end)` in place.
\tparam RandomAccessIterator `std::iterator_traits<RandomAccessIterator>::%value_type` must be convertible to
`Traits::Point_3`.
\tparam InputPointIterator must be a model of `RandomAccessIterator` and
`std::iterator_traits<InputPointIterator>::%value_type` must be convertible to `Traits::Point_3`.
\tparam Traits must be a model for concept `SpatialSortingTraits_3`.
The default traits class `Default_traits` is the kernel in which the type
`std::iterator_traits<RandomAccessIterator>::%value_type` is defined.
`std::iterator_traits<InputPointIterator>::%value_type` is defined.
\tparam PolicyTag is used to specify the strategy policy.
Possible values are \link CGAL::Hilbert_sort_median_policy `Hilbert_sort_median_policy` \endlink

View File

@ -10,9 +10,11 @@ of being close in the order.
It sorts the range `[begin, end)` in place.
\tparam ConcurrencyTag must be `Sequential_tag`, `Parallel_tag`, or `Parallel_if_available_tag`.
With parallelism and TBB enabled, the sorting will be
done using up to four threads in 2D, and up to eight threads in 3D with the median policy.
\tparam ConcurrencyTag enables sequential versus parallel algorithm.
Possible values are `Sequential_tag`, `Parallel_tag`, and `Parallel_if_available_tag`.
With parallelism enabled, sorting will be performed using up to four threads in 2D,
and up to eight threads in 3D.
Parallel sorting is available only when the median strategy policy (the default policy) is used.
\tparam InputPointIterator must be a model of `RandomAccessIterator` and
`std::iterator_traits<InputPointIterator>::%value_type` must be convertible to