STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Concurrency::_Parallel_transform_binary_helper< _Input_iterator1, _Input_iterator2, _Output_iterator, _Binary_operator> Class Template Reference

#include <ppl.h>

Public Member Functions

 _Parallel_transform_binary_helper (_Input_iterator1 &_First1, _Input_iterator1 _Last1, _Input_iterator2 &_First2, _Output_iterator &_Result, const _Binary_operator&_Binary_op)
 
void operator() () const
 

Private Member Functions

_Parallel_transform_binary_helper const & operator= (_Parallel_transform_binary_helper const &)
 

Private Attributes

_Iterator_helper< _Input_iterator1, typename std::iterator_traits< _Input_iterator1 >::iterator_category > _M_input_helper1
 
_Iterator_helper< _Input_iterator2, typename std::iterator_traits< _Input_iterator2 >::iterator_category > _M_input_helper2
 
_Iterator_helper< _Output_iterator, typename std::iterator_traits< _Output_iterator >::iterator_category > _M_output_helper
 
const _Binary_operator& _M_binary_op
 
size_t _M_len
 

Constructor & Destructor Documentation

template<typename _Input_iterator1, typename _Input_iterator2, typename _Output_iterator, typename _Binary_operator>
Concurrency::_Parallel_transform_binary_helper< _Input_iterator1, _Input_iterator2, _Output_iterator, _Binary_operator>::_Parallel_transform_binary_helper ( _Input_iterator1 &  _First1,
_Input_iterator1  _Last1,
_Input_iterator2 &  _First2,
_Output_iterator &  _Result,
const _Binary_operator&  _Binary_op 
)
inline
3687  :
3688  _M_binary_op(_Binary_op), _M_len(0)
3689  {
3690  _M_len = _M_input_helper1._Populate(_First1, _Last1);
3691  _M_input_helper2._Populate(_First2, _M_len);
3693  }
_Iterator_helper< _Input_iterator2, typename std::iterator_traits< _Input_iterator2 >::iterator_category > _M_input_helper2
Definition: ppl.h:3708
_Iterator_helper< _Input_iterator1, typename std::iterator_traits< _Input_iterator1 >::iterator_category > _M_input_helper1
Definition: ppl.h:3707
const _Binary_operator& _M_binary_op
Definition: ppl.h:3710
_Iterator_helper< _Output_iterator, typename std::iterator_traits< _Output_iterator >::iterator_category > _M_output_helper
Definition: ppl.h:3709
size_t _Populate(_Forward_iterator &_First, _Forward_iterator _Last)
Definition: ppl.h:3596
_Result
Definition: corecrt_wconio.h:362

Member Function Documentation

template<typename _Input_iterator1, typename _Input_iterator2, typename _Output_iterator, typename _Binary_operator>
void Concurrency::_Parallel_transform_binary_helper< _Input_iterator1, _Input_iterator2, _Output_iterator, _Binary_operator>::operator() ( ) const
inline
3696  {
3697  // Invoke parallel_for on the batched up array of elements
3698  ::Concurrency::_Parallel_for_impl(static_cast<size_t>(0), _M_len, static_cast<size_t>(1),
3699  [this] (size_t _Index)
3700  {
3702  });
3703  }
_Iterator_helper< _Input_iterator2, typename std::iterator_traits< _Input_iterator2 >::iterator_category > _M_input_helper2
Definition: ppl.h:3708
_In_ size_t _In_ int _Index
Definition: time.h:102
_Iterator_helper< _Input_iterator1, typename std::iterator_traits< _Input_iterator1 >::iterator_category > _M_input_helper1
Definition: ppl.h:3707
const _Binary_operator& _M_binary_op
Definition: ppl.h:3710
_Iterator_helper< _Output_iterator, typename std::iterator_traits< _Output_iterator >::iterator_category > _M_output_helper
Definition: ppl.h:3709
void _Store(const value_type &_Elem, size_t _Index) const
Definition: ppl.h:3618
std::iterator_traits< _Forward_iterator >::reference _Load(size_t _Index) const
Definition: ppl.h:3623
void _Parallel_for_impl(_Index_type _First, _Index_type _Last, _Index_type _Step, const _Function &_Func)
Definition: ppl.h:2509
template<typename _Input_iterator1, typename _Input_iterator2, typename _Output_iterator, typename _Binary_operator>
_Parallel_transform_binary_helper const& Concurrency::_Parallel_transform_binary_helper< _Input_iterator1, _Input_iterator2, _Output_iterator, _Binary_operator>::operator= ( _Parallel_transform_binary_helper< _Input_iterator1, _Input_iterator2, _Output_iterator, _Binary_operator> const &  )
private

Member Data Documentation

template<typename _Input_iterator1, typename _Input_iterator2, typename _Output_iterator, typename _Binary_operator>
const _Binary_operator& Concurrency::_Parallel_transform_binary_helper< _Input_iterator1, _Input_iterator2, _Output_iterator, _Binary_operator>::_M_binary_op
private
template<typename _Input_iterator1, typename _Input_iterator2, typename _Output_iterator, typename _Binary_operator>
_Iterator_helper<_Input_iterator1, typename std::iterator_traits<_Input_iterator1>::iterator_category> Concurrency::_Parallel_transform_binary_helper< _Input_iterator1, _Input_iterator2, _Output_iterator, _Binary_operator>::_M_input_helper1
private
template<typename _Input_iterator1, typename _Input_iterator2, typename _Output_iterator, typename _Binary_operator>
_Iterator_helper<_Input_iterator2, typename std::iterator_traits<_Input_iterator2>::iterator_category> Concurrency::_Parallel_transform_binary_helper< _Input_iterator1, _Input_iterator2, _Output_iterator, _Binary_operator>::_M_input_helper2
private
template<typename _Input_iterator1, typename _Input_iterator2, typename _Output_iterator, typename _Binary_operator>
size_t Concurrency::_Parallel_transform_binary_helper< _Input_iterator1, _Input_iterator2, _Output_iterator, _Binary_operator>::_M_len
private
template<typename _Input_iterator1, typename _Input_iterator2, typename _Output_iterator, typename _Binary_operator>
_Iterator_helper<_Output_iterator, typename std::iterator_traits<_Output_iterator>::iterator_category> Concurrency::_Parallel_transform_binary_helper< _Input_iterator1, _Input_iterator2, _Output_iterator, _Binary_operator>::_M_output_helper
private

The documentation for this class was generated from the following file: