tbb::interface6::internal::pipeline_proxy Class Reference

The class that represents an object of the pipeline for parallel_pipeline(). More...

`#include <pipeline.h>`

Collaboration diagram for tbb::interface6::internal::pipeline_proxy:

## Public Member Functions

| pipeline_proxy (const filter_t< void, void > &filter_chain)
| ~pipeline_proxy ()
tbb::pipeline * | operator-> ()

## Private Attributes

tbb::pipeline | my_pipe

## Detailed Description

The class that represents an object of the pipeline for parallel_pipeline().

It primarily serves as RAII class that deletes heap-allocated filter instances.

Definition at line 515 of file pipeline.h.

## Constructor & Destructor Documentation

## pipeline_proxy()

tbb::interface6::internal::pipeline_proxy::pipeline_proxy | ( | const filter_t< void, void > & | filter_chain | ) |

inline

Definition at line 651 of file pipeline.h.

: my_pipe() {
__TBB_ASSERT( filter_chain.root, "cannot apply parallel_pipeline to default-constructed filter_t" );
filter_chain.root->add_to(my_pipe);
}
__TBB_ASSERT
#define __TBB_ASSERT(predicate, comment)
No-op version of __TBB_ASSERT.
Definition: tbb_stddef.h:165
tbb::interface6::internal::pipeline_proxy::my_pipe
tbb::pipeline my_pipe
Definition: pipeline.h:516

References __TBB_ASSERT, tbb::interface6::internal::filter_node::add_to(), my_pipe, and tbb::interface6::filter_t< T, U >::root.

Here is the call graph for this function:

## ~pipeline_proxy()

tbb::interface6::internal::pipeline_proxy::~pipeline_proxy | ( |  | ) |

inline

Definition at line 519 of file pipeline.h.

{
while( filter* f = my_pipe.filter_list )
delete f; // filter destructor removes it from the pipeline
}

References my_pipe.

## Member Function Documentation

## operator->()

tbb::pipeline* tbb::interface6::internal::pipeline_proxy::operator-> | ( |  | ) |

inline

Definition at line 523 of file pipeline.h.

{ return &my_pipe; }

References my_pipe.

## Member Data Documentation

## my_pipe

tbb::pipeline tbb::interface6::internal::pipeline_proxy::my_pipe

private

Definition at line 516 of file pipeline.h.

Referenced by operator->(), pipeline_proxy(), and ~pipeline_proxy().

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

- pipeline.h

Copyright © 2005-2020 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.