GrPPI  0.2
Generic and Reusable Parallel Pattern Interface
pipeline.h
Go to the documentation of this file.
1 
21 #ifndef GRPPI_PIPELINE_H
22 #define GRPPI_PIPELINE_H
23 
24 #include "seq/pipeline.h"
25 #include "native/pipeline.h"
26 #include "omp/pipeline.h"
27 #include "tbb/pipeline.h"
28 #include "poly/pipeline.h"
29 #include "common/patterns.h"
30 
31 namespace grppi {
32 
51 template <typename Execution, typename Transformer,
52  typename ... MoreTransformers,
53  requires_arguments<Transformer> = 0>
54 pipeline_info<Execution,Transformer,MoreTransformers...>
55 pipeline(Execution & ex, Transformer && transform_op,
56  MoreTransformers && ... more_transform_ops)
57 {
58  return pipeline_info<Execution,Transformer, MoreTransformers...> (ex,
59  std::forward<Transformer>(transform_op),
60  std::forward<MoreTransformers>(more_transform_ops)...);
61 }
62 
63 
64 
70 }
71 
72 #endif
Definition: callable_traits.h:24
Definition: patterns.h:29
void pipeline(parallel_execution_native &ex, Generator &&generate_op, Transformers &&...transform_ops)
Invoke Pipeline pattern on a data stream with native parallel execution.
Definition: native/pipeline.h:500