tbb::interface6::aggregator_operation Class Reference

`#include <aggregator.h>`

Inheritance diagram for tbb::interface6::aggregator_operation:
Collaboration diagram for tbb::interface6::aggregator_operation:

## Public Types

enum | aggregator_operation_status { agg_waiting =0, agg_finished }

## Public Member Functions

| aggregator_operation ()
void | start ()
| Call start before handling this operation. More...
void | finish ()
| Call finish when done handling this operation. More...
aggregator_operation * | next ()
void | set_next (aggregator_operation *n)

## Private Attributes

uintptr_t | status
aggregator_operation * | my_next

## Friends

template<typename handler_type >
class | aggregator_ext

## Detailed Description

Definition at line 35 of file aggregator.h.

## Member Enumeration Documentation

## aggregator_operation_status

enum tbb::interface6::aggregator_operation::aggregator_operation_status

Enumerator
agg_waiting |
agg_finished |

Definition at line 40 of file aggregator.h.

{ agg_waiting=0, agg_finished };

## Constructor & Destructor Documentation

## aggregator_operation()

tbb::interface6::aggregator_operation::aggregator_operation | ( |  | ) |

inline

Definition at line 41 of file aggregator.h.

: status(agg_waiting), my_next(NULL) {}

## Member Function Documentation

## finish()

void tbb::interface6::aggregator_operation::finish | ( |  | ) |

inline

Call finish when done handling this operation.

The operation will be released to its originating thread, and possibly deleted.

Definition at line 46 of file aggregator.h.

{ itt_store_word_with_release(status, uintptr_t(agg_finished)); }

References tbb::internal::itt_store_word_with_release().

Referenced by tbb::interface6::internal::basic_handler::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

## next()

aggregator_operation* tbb::interface6::aggregator_operation::next | ( |  | ) |

inline

Definition at line 47 of file aggregator.h.

{ return itt_hide_load_word(my_next);}

References tbb::internal::itt_hide_load_word().

Referenced by tbb::interface6::internal::basic_handler::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

## set_next()

void tbb::interface6::aggregator_operation::set_next | ( | aggregator_operation * | n | ) |

inline

Definition at line 48 of file aggregator.h.

{ itt_hide_store_word(my_next, n); }

References tbb::internal::itt_hide_store_word().

Here is the call graph for this function:

## start()

void tbb::interface6::aggregator_operation::start | ( |  | ) |

inline

Call start before handling this operation.

Definition at line 43 of file aggregator.h.

{ call_itt_notify(acquired, &status); }

References tbb::internal::acquired, and tbb::internal::call_itt_notify().

Referenced by tbb::interface6::internal::basic_handler::operator()().

Here is the call graph for this function:
Here is the caller graph for this function:

## Friends And Related Function Documentation

## aggregator_ext

template<typename handler_type >

friend class aggregator_ext

friend

Definition at line 36 of file aggregator.h.

## Member Data Documentation

## my_next

aggregator_operation* tbb::interface6::aggregator_operation::my_next

private

Definition at line 38 of file aggregator.h.

Referenced by tbb::interface6::aggregator_ext< internal::basic_handler >::execute_impl().

## status

uintptr_t tbb::interface6::aggregator_operation::status

private

Definition at line 37 of file aggregator.h.

Referenced by tbb::interface6::aggregator_ext< internal::basic_handler >::execute_impl().

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

- aggregator.h

tbb::internal::itt_store_word_with_release
void itt_store_word_with_release(tbb::atomic< T > &dst, U src)
Definition: tbb_profiling.h:157
tbb::interface6::aggregator_operation::status
uintptr_t status
Definition: aggregator.h:37
tbb::internal::acquired
Definition: tbb_profiling.h:129
tbb::interface6::aggregator_operation::agg_waiting
Definition: aggregator.h:40
tbb::internal::itt_hide_store_word
void itt_hide_store_word(T &dst, T src)
Definition: tbb_profiling.h:210
tbb::interface6::aggregator_operation::agg_finished
Definition: aggregator.h:40
tbb::internal::itt_hide_load_word
T itt_hide_load_word(const T &src)
Definition: tbb_profiling.h:222
tbb::internal::call_itt_notify
void call_itt_notify(notify_type, void *)
Definition: tbb_profiling.h:276
tbb::interface6::aggregator_operation::my_next
aggregator_operation * my_next
Definition: aggregator.h:38

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.