GrPPI  1.0
Generic and Reusable Parallel Pattern Interface
Functions

Interface for applyinng the Map pattern. More...

Collaboration diagram for Map pattern:

Functions

template<typename Execution , typename ... InputIterators, typename InputIt , typename OutputIt , typename Transformer , requires_iterators< InputIterators... > = 0, requires_iterator< InputIt > = 0, requires_iterator< OutputIt > = 0>
void grppi::map (const Execution &ex, std::tuple< InputIterators... > firsts, InputIt last, OutputIt first_out, Transformer transform_op)
 Invoke Map pattern on a data sequence. More...
 
template<typename Execution , typename ... InputIterators, typename OutputIt , typename Transformer , requires_iterators< InputIterators... > = 0, requires_iterator< OutputIt > = 0>
void grppi::map (const Execution &ex, std::tuple< InputIterators... > firsts, std::size_t range, OutputIt first_out, Transformer transformer_op)
 Invoke Map pattern on a data sequence. More...
 
template<typename Execution , typename InputIt , typename OutputIt , typename Transformer , requires_iterator< InputIt > = 0, requires_iterator< OutputIt > = 0>
void grppi::map (const Execution &ex, InputIt first, InputIt last, OutputIt first_out, Transformer transform_op)
 Invoke Map pattern on a data sequence. More...
 
template<typename Execution , typename InputIt , typename OutputIt , typename Transformer , typename ... OtherInputIts, requires_iterator< InputIt > = 0, requires_iterator< OutputIt > = 0>
void grppi::map (const Execution &ex, InputIt first, InputIt last, OutputIt first_out, Transformer transform_op, OtherInputIts ... other_firsts)
 Invoke Map pattern on a data sequence. More...
 

Detailed Description

Interface for applyinng the Map pattern.

Function Documentation

◆ map() [1/4]

template<typename Execution , typename InputIt , typename OutputIt , typename Transformer , requires_iterator< InputIt > = 0, requires_iterator< OutputIt > = 0>
void grppi::map ( const Execution &  ex,
InputIt  first,
InputIt  last,
OutputIt  first_out,
Transformer  transform_op 
)

Invoke Map pattern on a data sequence.

Template Parameters
InputItIterator type used for input sequence.
OutputItIterator type used for the output sequence.
TransformerCallable type for the transformation operation.
Parameters
exExecution policy object.
firstIterator to the first element in the input sequence.
lastIterator to one past the end of the input sequence.
first_outIterator to first element of the output sequence.
transform_opTransformation operation.

◆ map() [2/4]

template<typename Execution , typename InputIt , typename OutputIt , typename Transformer , typename ... OtherInputIts, requires_iterator< InputIt > = 0, requires_iterator< OutputIt > = 0>
void grppi::map ( const Execution &  ex,
InputIt  first,
InputIt  last,
OutputIt  first_out,
Transformer  transform_op,
OtherInputIts ...  other_firsts 
)

Invoke Map pattern on a data sequence.

Template Parameters
InputItIterator type used for input sequence.
OutputItIterator type used for the output sequence.
TransformerCallable type for the transformation operation.
OtherInputItsIterator types used for additional input sequences.
Parameters
exExecution policy object.
firstIterator to the first element in the input sequence.
lastIterator to one past the end of the input sequence.
first_outIterator to first element of the output sequence.
transform_opTransformation operation.
more_firstsAdditional iterators with first elements of additional sequences.

◆ map() [3/4]

template<typename Execution , typename ... InputIterators, typename InputIt , typename OutputIt , typename Transformer , requires_iterators< InputIterators... > = 0, requires_iterator< InputIt > = 0, requires_iterator< OutputIt > = 0>
void grppi::map ( const Execution &  ex,
std::tuple< InputIterators... >  firsts,
InputIt  last,
OutputIt  first_out,
Transformer  transform_op 
)

Invoke Map pattern on a data sequence.

Template Parameters
InputIteratorsIterator types used for input sequences.
InputItIterator type used for any input sequence.
OutputItIterator type used for the output sequence.
TransformerCallable type for the transformation operation.
Parameters
exExecution policy object.
firstsTuple of Iterators to the first element in the inputs sequences.
lastIterator to one past the end of one of the input sequence.
first_outIterator to first element of the output sequence.
transform_opTransformation operation.

◆ map() [4/4]

template<typename Execution , typename ... InputIterators, typename OutputIt , typename Transformer , requires_iterators< InputIterators... > = 0, requires_iterator< OutputIt > = 0>
void grppi::map ( const Execution &  ex,
std::tuple< InputIterators... >  firsts,
std::size_t  range,
OutputIt  first_out,
Transformer  transformer_op 
)

Invoke Map pattern on a data sequence.

Template Parameters
InputIteratorsIterator types used for input sequences.
OutputItIterator type used for the output sequence.
TransformerCallable type for the transformation operation.
Parameters
exExecution policy object.
firstsTuple of Iterators to the first element in the inputs sequences.
rangeSize of the input sequences to go through.
first_outIterator to first element of the output sequence.
transform_opTransformation operation.