# 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:

List of all members.

## Public Types

| success
| item_not_available
| end_of_stream
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.
result_type __TBB_EXPORTED_METHOD | process_item ()
| Wait until a data item becomes available, and invoke operator() on that item.

## Protected Member Functions

| thread_bound_filter (mode filter_mode)

## 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-2013 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.