STAPL API Reference          
Overview   Containers   Algorithms   Views   Skeletons   Run-Time System
Modules     Classes    
List of all members | Public Member Functions | Public Types
stapl::skeletons::skeletons_impl::notify_map< Op, NotifCount, Span, Flows, Filter > Struct Template Reference

This class abstracts the semantics of a notify_map skeleton by exposing only the necessary information in its representation. More...

Public Member Functions

 notify_map (Op const &op, Filter const &filter)
 
Op get_op (void) const
 

Public Types

using skeleton_tag_type = tags::notify_map< NotifCount >
 
using base_type = decltype(skeletons::elem< Span, Flows >(skeletons::notify_map_pd< NotifCount >(std::declval< Op >(), std::declval< Filter >())))
 

Detailed Description

template<typename Op, int NotifCount, typename Span, typename Flows, typename Filter>
struct stapl::skeletons::skeletons_impl::notify_map< Op, NotifCount, Span, Flows, Filter >

This class abstracts the semantics of a notify_map skeleton by exposing only the necessary information in its representation.

A notify_map skeleton is similar to a map skeleton, but it also receives NotifCount notifications from its first NotifCount flow.

This skeleton is used when consecutive maps are non-side-effect-free and work on the same set of inputs.

This abstraction not only makes the reconstruction of a a notify_map skeleton easier, but also reduces the symbol size for a notify_map skeleton, hence, reducing the total compilation time.

Template Parameters
Opthe workfunction to be used in each notify_map parametric dependency.
NotifCountthe number of notification flows to notify_map
Spanthe iteration space for the elements in the skeleton.
Flowsthe flow between the elements in the skeleton.
Filterthe filter to be applied on the result produced by the operation.

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