libjmmcg
build_2783
A C++ library containing an eclectic mix of useful, advanced components.
|
#include <parallel_algorithms.hpp>
Public Types | |
typedef swap_pred< lhs_dir, out_iterator, operation_type > | swapper_t |
typedef boost::function< void(out_iterator, out_iterator, std::binary_negate< swapper_t >)> | sort_fn_t |
Public Member Functions | |
constexpr | merge (out_iterator b, out_iterator e, operation_type const &f, sort_fn_t const &sfn, cliques::element_type const cl) noexcept(true) FORCE_INLINE |
virtual | ~merge () FORCE_INLINE |
void __fastcall | process () const |
constexpr bool __fastcall | operator< (merge const &) const noexcept(true) FORCE_INLINE |
Static Public Attributes | |
static constexpr direction | lhs_dir =LHSDir |
The general direction of the comparator. More... | |
static constexpr direction | rhs_dir =RHSDir |
The direction that the rhs of the sort should be flipped, because for merges the sequence is bitonic, so the rhs sub-ranges need to be flipped. More... | |
static constexpr ppd::generic_traits::memory_access_modes | memory_access_mode =thread_pool_type::template swap_ranges_t<typename containers_type::output_t::container_type, swapper_t>::memory_access_mode |
Definition at line 880 of file parallel_algorithms.hpp.
typedef boost::function<void (out_iterator, out_iterator, std::binary_negate<swapper_t>)> jmmcg::ppd::private_::alg_wk_wrap::batchers_bitonic_merge_reduce< Conts, Comp >::merge< LHSDir, RHSDir, FinalSort >::sort_fn_t |
Definition at line 263 of file parallel_algorithms_impl.hpp.
typedef swap_pred<lhs_dir, out_iterator, operation_type> jmmcg::ppd::private_::alg_wk_wrap::batchers_bitonic_merge_reduce< Conts, Comp >::merge< LHSDir, RHSDir, FinalSort >::swapper_t |
Definition at line 262 of file parallel_algorithms_impl.hpp.
|
inlineconstexprnoexcept |
Definition at line 270 of file parallel_algorithms_impl.hpp.
|
inlinevirtual |
Definition at line 273 of file parallel_algorithms_impl.hpp.
|
inlineconstexprnoexcept |
Definition at line 307 of file parallel_algorithms_impl.hpp.
|
inline |
Definition at line 278 of file parallel_algorithms_impl.hpp.
Referenced by jmmcg::ppd::private_::alg_wk_wrap::batchers_bitonic_merge_reduce< Conts, Comp >::batchers_bitonic_merge_reduce(), jmmcg::ppd::private_::alg_wk_wrap::find_if_reduce< Conts, CtrPred >::find_if_reduce(), jmmcg::ppd::private_::alg_wk_wrap::max_element_reduce< Conts, Fn >::max_element_reduce(), jmmcg::ppd::private_::alg_wk_wrap::batchers_bitonic_merge_reduce< Conts, Comp >::merge< LHSDir, RHSDir, FinalSort >::merge(), jmmcg::ppd::private_::alg_wk_wrap::min_element_reduce< Conts, Fn >::min::min(), jmmcg::ppd::private_::alg_wk_wrap::max_element_reduce< Conts, Fn >::max::operator()(), jmmcg::ppd::private_::alg_wk_wrap::min_element_reduce< Conts, Fn >::min::operator()(), jmmcg::ppd::private_::alg_wk_wrap::batchers_bitonic_merge_reduce< Conts, Comp >::merge< LHSDir, RHSDir, FinalSort >::operator<(), jmmcg::ppd::private_::alg_wk_wrap::count_if_reduce< Conts, CtrPred >::process(), jmmcg::ppd::private_::alg_wk_wrap::accumulate_reduce< Conts, Fn >::process(), jmmcg::ppd::private_::alg_wk_wrap::min_element_reduce< Conts, Fn >::process(), jmmcg::ppd::private_::alg_wk_wrap::swap_ranges_reduce< Conts, Pred >::process(), jmmcg::ppd::private_::alg_wk_wrap::reverse_reduce< Conts, Fn >::reverse_reduce(), and jmmcg::ppd::private_::alg_wk_wrap::batchers_bitonic_merge_reduce< Conts, Comp >::merge< LHSDir, RHSDir, FinalSort >::~merge().
|
staticconstexpr |
The general direction of the comparator.
Definition at line 260 of file parallel_algorithms_impl.hpp.
|
staticconstexpr |
To assist in allowing compile-time computation of the algorithmic order of the threading model.
Definition at line 268 of file parallel_algorithms_impl.hpp.
|
staticconstexpr |
The direction that the rhs of the sort should be flipped, because for merges the sequence is bitonic, so the rhs sub-ranges need to be flipped.
Definition at line 261 of file parallel_algorithms_impl.hpp.