Function object that delays the execution of a PARAGRAPH, pending notification from predecessor PARAGRAPHs who compute values that the successor receives as view inputs.Allows initialization of PARAGRAPH (and perhaps some task initialization to proceed concurrently with predecessor PARAGRAPH execution. More...
Public Member Functions | |
void | operator() (void) |
Receive notification from a predecessor PARAGRAPH. More... | |
void | set_executor_ptr (executor_base &executor_ptr, executor_base &parent_executor_ptr) |
Initializes executor data members. If all predecessor PARAGRAPH have already notified, then release the target PARAGRAPH's executor to its parent and destroy this notifier. More... | |
void | increment_preds (void) |
Increment the predecessor notification count this notifier expects. More... | |
bool | ready (void) const |
Return true if all notifications from predecessor have been received and the PARAGRAPH this notifier services can be executed. More... | |
Function object that delays the execution of a PARAGRAPH, pending notification from predecessor PARAGRAPHs who compute values that the successor receives as view inputs.
Allows initialization of PARAGRAPH (and perhaps some task initialization to proceed concurrently with predecessor PARAGRAPH execution.
void stapl::detail::cross_tg_notifier::operator() | ( | void | ) |
Receive notification from a predecessor PARAGRAPH.
Decrement internal notification counter. If this is the last pending notification, release the target PARAGRAPH's executor to its parent and destroy this notifier.
void stapl::detail::cross_tg_notifier::set_executor_ptr | ( | executor_base & | executor_ptr, |
executor_base & | parent_executor_ptr | ||
) |
Initializes executor data members. If all predecessor PARAGRAPH have already notified, then release the target PARAGRAPH's executor to its parent and destroy this notifier.
executor_ptr | Pointer to executor of the PARAGRAPH this notifier will notify. |
parent_executor_ptr | Pointer to parent executor of of the PARAGRAPH this notifier will notify. |
PARAGRAPH ensures method is not called until all predecessors have been accounted for by calls to increment_preds
.
void stapl::detail::cross_tg_notifier::increment_preds | ( | void | ) |
Increment the predecessor notification count this notifier expects.
bool stapl::detail::cross_tg_notifier::ready | ( | void | ) | const |
Return true if all notifications from predecessor have been received and the PARAGRAPH this notifier services can be executed.
PARAGRAPH ensures method is not called until all predecessors have been accounted for by calls to increment_preds
.