| Taskflow: A General-purpose Task-parallel Programming System

Loading...
Searching...
No Matches
Public Member Functions | Friends | List of all members
tf::Pipeflow Class Reference

class to create a pipeflow object used by the pipe callable More...

`#include <taskflow/algorithm/pipeline.hpp>`

## Public Member Functions
| Pipeflow ()=default
| default constructor
size_t | line () const
| queries the line identifier of the present token
size_t | pipe () const
| queries the pipe identifier of the present token
size_t | token () const
| queries the token identifier
void | stop ()
| stops the pipeline scheduling

## Friends
template<typename... Ps>
class | Pipeline
template<typename P >
class | ScalablePipeline
template<typename... Ps>
class | DataPipeline

## Detailed Description

class to create a pipeflow object used by the pipe callable

Pipeflow represents a scheduling token in the pipeline scheduling framework. A pipeflow is created by the pipeline scheduler at runtime to pass to the pipe callable. Users can query the present statistics of that scheduling token, including the line identifier, pipe identifier, and token identifier, and build their application algorithms based on these statistics. At the first stage, users can explicitly call the stop method to stop the pipeline scheduler.

tf::Pipe{tf::PipeType::SERIAL, [](tf::Pipeflow& pf){
std::cout << "token id=" << pf.token()
<< " at line=" << pf.line()
<< " at pipe=" << pf.pipe()
<< '\n';
}};
tf::Pipe
class to create a pipe object for a pipeline stage
Definition pipeline.hpp:144
tf::Pipeflow
class to create a pipeflow object used by the pipe callable
Definition pipeline.hpp:43
tf::PipeType::SERIAL
@ SERIAL
serial type

Pipeflow can only be created privately by the tf::Pipeline and be used through the pipe callable.

## Member Function Documentation

## ◆ stop()

void tf::Pipeflow::stop | ( |  | ) |
| inline

stops the pipeline scheduling

Only the first pipe can call this method to stop the pipeline. Calling stop from other pipes will throw exception.

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

- taskflow/algorithm/pipeline.hpp