tbb::thread_bound_filter Class Reference
Algorithms

A stage in a pipeline served by a user thread. More...

`#include <pipeline.h>`

Inheritance diagram for tbb::thread_bound_filter:

## Public Types

enum | result_type { success, item_not_available, end_of_stream }

## Public Member Functions

result_type __TBB_EXPORTED_METHOD | try_process_item ()
| If a data item is available, invoke operator() on that item. More...
result_type __TBB_EXPORTED_METHOD | process_item ()
| Wait until a data item becomes available, and invoke operator() on that item. More...

## Protected Member Functions

| thread_bound_filter (mode filter_mode)

## Additional Inherited Members

Static Protected Attributes inherited from tbb::filter
static const unsigned char | filter_is_serial = 0x1
| The lowest bit 0 is for parallel vs. serial.
static const unsigned char | filter_is_out_of_order = 0x1<<4
| 4th bit distinguishes ordered vs unordered filters. More...
static const unsigned char | filter_is_bound = 0x1<<5
| 5th bit distinguishes thread-bound and regular filters.
static const unsigned char | filter_may_emit_null = 0x1<<6
| 6th bit marks input filters emitting small objects
static const unsigned char | exact_exception_propagation
| 7th bit defines exception propagation mode expected by the application. More...

## Detailed Description

A stage in a pipeline served by a user thread.

## Member Function Documentation

result_type __TBB_EXPORTED_METHOD tbb::thread_bound_filter::process_item | ( | ) |  |

Wait until a data item becomes available, and invoke operator() on that item.

This interface is blocking. Returns 'success' if an item was processed. Returns 'end_of_stream' if there are no more items to process. Never returns 'item_not_available', as it blocks until another return condition applies.

result_type __TBB_EXPORTED_METHOD tbb::thread_bound_filter::try_process_item | ( | ) |  |

If a data item is available, invoke operator() on that item.

This interface is non-blocking. Returns 'success' if an item was processed. Returns 'item_not_available' if no item can be processed now but more may arrive in the future, or if token limit is reached. Returns 'end_of_stream' if there are no more items to process.

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

- pipeline.h

Copyright © 2005-2017 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.