rpa::remove_copy_if_seq_size_jump< RngIn, RngOut, Ftor > Struct Template Reference

For static and interleaved scheduling (range_size and range_jump). More...

#include <remove_copy_if.h>

List of all members.

Public Types

typedef RngIn::slice SliceIn
typedef range_void< typename
SliceIn::iterator > 
BaseRngIn
typedef RngOut::slice SliceOut
typedef SliceOut::iterator BaseItOut
typedef remove_copy_if_t<
BaseRngIn, BaseItOut, Ftor > 
functor_base
typedef SliceOut::iterator result_type
typedef tuple2< SliceIn, SliceOutPairT

Classes

struct  functor_t
 The role of this class is to add the method 'reduce'. More...


Detailed Description

template<class RngIn, class RngOut, class Ftor>
struct rpa::remove_copy_if_seq_size_jump< RngIn, RngOut, Ftor >

For static and interleaved scheduling (range_size and range_jump).

This data structure encapsulates the functor. Its role is to allow to flush output buffers, not when the sub-threads terminates, but when the main threads 'reduct' each return value of each sub-thread. There must be one such 'remove_copy_if_seq_size_jump' object per sub-thread. In the general case, such as here, the output iterator has no buffer (i.e. is not instanciation of 'obuf_iterator'). Therefore, no special processing of the return value of the functor is needed.


Member Typedef Documentation

template<class RngIn, class RngOut, class Ftor>
typedef SliceOut::iterator rpa::remove_copy_if_seq_size_jump< RngIn, RngOut, Ftor >::BaseItOut

template<class RngIn, class RngOut, class Ftor>
typedef range_void< typename SliceIn::iterator > rpa::remove_copy_if_seq_size_jump< RngIn, RngOut, Ftor >::BaseRngIn

template<class RngIn, class RngOut, class Ftor>
typedef remove_copy_if_t< BaseRngIn, BaseItOut, Ftor > rpa::remove_copy_if_seq_size_jump< RngIn, RngOut, Ftor >::functor_base

template<class RngIn, class RngOut, class Ftor>
typedef tuple2< SliceIn, SliceOut > rpa::remove_copy_if_seq_size_jump< RngIn, RngOut, Ftor >::PairT

template<class RngIn, class RngOut, class Ftor>
typedef SliceOut::iterator rpa::remove_copy_if_seq_size_jump< RngIn, RngOut, Ftor >::result_type

template<class RngIn, class RngOut, class Ftor>
typedef RngIn::slice rpa::remove_copy_if_seq_size_jump< RngIn, RngOut, Ftor >::SliceIn

template<class RngIn, class RngOut, class Ftor>
typedef RngOut::slice rpa::remove_copy_if_seq_size_jump< RngIn, RngOut, Ftor >::SliceOut


The documentation for this struct was generated from the following file:
Generated on Tue Sep 25 10:20:32 2007 for rpa by  doxygen 1.4.7