This object is allocated on each location of a PARAGRAPH as storage for that location's return value of the PARAGRAPH. The key feature is that its lifetime can extend beyond the PARAGRAPH itself and is driven by the return value's use by other computation.
More...
|
| result_container (bool b_one_sided, bool b_spanned, task_graph &tg) |
| Plug count initialized to one, representing the view object that constructed this object.
|
|
| ~result_container () |
|
void | reset (void) |
|
bool | has_outstanding_consumers (void) const |
|
template<typename PortFilter , typename ValueFilter , typename LocationMapper > |
void | request_flow (rmi_handle::reference consumer, location_type parent_location, PortFilter port_filter, ValueFilter value_filter, LocationMapper location_mapper) |
| Called by PARAGRAPHs at same level of nesting as this one to request dataflow from this output port to one of their input ports. This method is called on each location of the producer by the matching locations on the consumer. More...
|
|
void | request_parent_flow (boost::function< size_t(size_t)> mapper, boost::function< bool(size_t)> port_filter) final |
| Called by parent PARAGRAPH to request flow from this output port to some set of output ports on the parent. More...
|
|
void | try_delete () |
| Check if a deletion has been placed on hold while notifications are being flushed. If it has, flag the object as orphaned so that the flushing function will handle deletion when it is finished. If no hold has been placed, delete the object now. More...
|
|
void | receive_value (index_type index, stored_value_t const &val) |
| Target of callback from internal PARAGRAPH task that specifies the result for this location (i.e., task_id was passed to set_result ). More...
|
|
bool | available (index_type idx) const |
| Check if local PARAGRAPH result is available.
|
|
bool | available (void) const |
| Checks to see if global flow has been detected...
|
|
value_type | get_element (index_type idx) const |
| Return copy of local PARAGRAPH result.
|
|
stored_value_t const & | get_reference (index_type idx) const |
| Return reference to local PARAGRAPH result.
|
|
value_type const & | operator[] (index_type idx) const |
| Return reference to local PARAGRAPH result.
|
|
template<typename Functor > |
Functor::result_type | apply_get (index_type idx, Functor func) const |
| Return result of functor application to local PARAGRAPH result.
|
|
void | increment_ref_cnt (bool b_is_plug, bool) |
| Update reference counts based on new result_view object instantiation. More...
|
|
std::size_t | decrement_ref_cnt (bool b_is_plug) |
| Decrement the appropriate reference counter and return the aggregate number of references to this container based on b_is_plug . The caller view will delete this object iff the return value is 0.
|
|
template<typename T>
struct stapl::detail::result_container< T >
This object is allocated on each location of a PARAGRAPH as storage for that location's return value of the PARAGRAPH. The key feature is that its lifetime can extend beyond the PARAGRAPH itself and is driven by the return value's use by other computation.
- Template Parameters
-
T | The return type of the PARAGRAPH. |