GrPPI  0.2
Generic and Reusable Parallel Pattern Interface
Namespaces | Functions
native/pipeline.h File Reference
#include "parallel_execution_native.h"
#include "../common/pack_traits.h"
#include "../common/callable_traits.h"
#include <thread>
#include <experimental/optional>
Include dependency graph for native/pipeline.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 grppi
 

Functions

template<typename InQueue , typename OutQueue , int Index, typename... MoreTransformers, internal::requires_index_last< Index, MoreTransformers... > = 0>
void grppi::composed_pipeline (InQueue &input_queue, const pipeline_info< parallel_execution_native, MoreTransformers... > &pipe, OutQueue &output_queue, std::vector< std::thread > &tasks)
 
template<typename InQueue , typename Transformer , typename OutQueue >
void grppi::composed_pipeline (parallel_execution_native &ex, InQueue &input_queue, Transformer &&transform_op, OutQueue &output_queue, std::vector< std::thread > &tasks)
 
template<typename InQueue , typename Consumer >
void grppi::pipeline_impl (parallel_execution_native &ex, InQueue &input_queue, Consumer &&consume)
 
template<typename Combiner , typename Identity , typename InQueue , typename... MoreTransformers>
void grppi::pipeline_impl (parallel_execution_native &ex, InQueue &input_queue, reduction_info< parallel_execution_native, Combiner, Identity > &reduction_obj, MoreTransformers...more_transform_ops)
 
template<typename Combiner , typename Identity , typename InQueue , typename... MoreTransformers>
void grppi::pipeline_impl (parallel_execution_native &ex, InQueue &input_queue, reduction_info< parallel_execution_native, Combiner, Identity > &&reduction_obj, MoreTransformers...more_transform_ops)
 
template<typename Combiner , typename Identity , typename InQueue , typename... MoreTransformers>
void grppi::pipeline_impl_ordered (parallel_execution_native &ex, InQueue &input_queue, reduction_info< parallel_execution_native, Combiner, Identity > &&reduction_obj, MoreTransformers...more_transform_ops)
 
template<typename Transformer , typename InQueue , typename... MoreTransformers>
void grppi::pipeline_impl (parallel_execution_native &ex, InQueue &input_queue, filter_info< parallel_execution_native, Transformer > &filter_obj, MoreTransformers &&...more_transform_ops)
 
template<typename Transformer , typename InQueue , typename... MoreTransformers>
void grppi::pipeline_impl_ordered (parallel_execution_native &ex, InQueue &input_queue, filter_info< parallel_execution_native, Transformer > &&filter_obj, MoreTransformers &&...more_transform_ops)
 
template<typename Transformer , typename InQueue , typename... MoreTransformers>
void grppi::pipeline_impl_unordered (parallel_execution_native &ex, InQueue &input_queue, filter_info< parallel_execution_native, Transformer > &&filter_obj, MoreTransformers &&...more_transform_ops)
 
template<typename Transformer , typename InQueue , typename... MoreTransformers>
void grppi::pipeline_impl (parallel_execution_native &ex, InQueue &input_queue, filter_info< parallel_execution_native, Transformer > &&filter_obj, MoreTransformers &&...more_transform_ops)
 
template<typename Transformer , typename InQueue , typename... MoreTransformers>
void grppi::pipeline_impl (parallel_execution_native &ex, InQueue &input_queue, farm_info< parallel_execution_native, Transformer > &farm_obj, MoreTransformers &&...more_transform_ops)
 
template<typename Transformer , typename InQueue , typename... MoreTransformers>
void grppi::pipeline_impl (parallel_execution_native &p, InQueue &input_queue, farm_info< parallel_execution_native, Transformer > &&farm_obj, MoreTransformers &&...more_transform_ops)
 
template<typename Transformer , typename InQueue , typename... MoreTransformers>
void grppi::pipeline_impl (parallel_execution_native &ex, InQueue &input_queue, Transformer &&transform_op, MoreTransformers &&...more_transform_ops)
 
template<typename Generator , typename... Transformers, requires_no_arguments< Generator > = 0>
void grppi::pipeline (parallel_execution_native &ex, Generator &&generate_op, Transformers &&...transform_ops)
 Invoke Pipeline pattern on a data stream with native parallel execution. More...