libjmmcg  build_2783
A C++ library containing an eclectic mix of useful, advanced components.
jmmcg::ppd::private_::alg_wk_wrap::reverse_reduce< Conts, Fn > Struct Template Reference

Assist with implementing the parallel versions of the standard algorithms. More...

#include <parallel_algorithms.hpp>

Public Types

typedef Fn operation_type
 
typedef operation_type::result_type result_type
 
typedef Conts containers_type
 
typedef containers_type::in_iterator in_iterator
 

Public Member Functions

constexpr __stdcall reverse_reduce (in_iterator const &bs, in_iterator const &es, operation_type const &w) FORCE_INLINE
 
void __fastcall process () const FORCE_INLINE
 
constexpr bool __fastcall operator< (reverse_reduce const &) const noexcept(true) FORCE_INLINE
 

Static Public Attributes

static constexpr ppd::generic_traits::memory_access_modes memory_access_mode =ppd::generic_traits::memory_access_modes::crew_memory_access
 

Detailed Description

template<class Conts, typename Fn>
struct jmmcg::ppd::private_::alg_wk_wrap::reverse_reduce< Conts, Fn >

Assist with implementing the parallel versions of the standard algorithms.

Note that this operation should operate on an output range that no-other thread should modify, i.e. that range should have at least a read-lock taken on it.

See also
reverse_work_type
thread_base::reverse_t
thread_base::alg_wrapper1

Definition at line 632 of file parallel_algorithms.hpp.

Member Typedef Documentation

◆ containers_type

template<class Conts , typename Fn >
typedef Conts jmmcg::ppd::private_::alg_wk_wrap::reverse_reduce< Conts, Fn >::containers_type

Definition at line 635 of file parallel_algorithms.hpp.

◆ in_iterator

template<class Conts , typename Fn >
typedef containers_type::in_iterator jmmcg::ppd::private_::alg_wk_wrap::reverse_reduce< Conts, Fn >::in_iterator

Definition at line 636 of file parallel_algorithms.hpp.

◆ operation_type

template<class Conts , typename Fn >
typedef Fn jmmcg::ppd::private_::alg_wk_wrap::reverse_reduce< Conts, Fn >::operation_type

Definition at line 633 of file parallel_algorithms.hpp.

◆ result_type

template<class Conts , typename Fn >
typedef operation_type::result_type jmmcg::ppd::private_::alg_wk_wrap::reverse_reduce< Conts, Fn >::result_type

Definition at line 634 of file parallel_algorithms.hpp.

Constructor & Destructor Documentation

◆ reverse_reduce()

template<class Conts , typename Fn >
constexpr jmmcg::ppd::private_::alg_wk_wrap::reverse_reduce< Conts, Fn >::reverse_reduce ( in_iterator const &  bs,
in_iterator const &  es,
operation_type const &  w 
)
inlineconstexpr

Member Function Documentation

◆ operator<()

template<class Conts , typename Fn >
constexpr bool __fastcall jmmcg::ppd::private_::alg_wk_wrap::reverse_reduce< Conts, Fn >::operator< ( reverse_reduce< Conts, Fn > const &  ) const
inlineconstexprnoexcept

Definition at line 647 of file parallel_algorithms.hpp.

◆ process()

template<class Conts , typename Fn >
void jmmcg::ppd::private_::alg_wk_wrap::reverse_reduce< Conts, Fn >::process ( ) const
inline

Definition at line 197 of file parallel_algorithms_impl.hpp.

Member Data Documentation

◆ memory_access_mode

template<class Conts , typename Fn >
constexpr ppd::generic_traits::memory_access_modes jmmcg::ppd::private_::alg_wk_wrap::reverse_reduce< Conts, Fn >::memory_access_mode =ppd::generic_traits::memory_access_modes::crew_memory_access
staticconstexpr

To assist in allowing compile-time computation of the algorithmic order of the threading model.

Definition at line 641 of file parallel_algorithms.hpp.


The documentation for this struct was generated from the following files: