STAPL API Reference          
Overview   Containers   Algorithms   Views   Skeletons   Run-Time System
Modules     Classes    
List of all members | Public Member Functions | Public Types
stapl::view_impl::native_partition< View > Struct Template Reference

Represent a collection of domains that matches how the data in distributed on the underlying container associated with the given view. More...

Public Member Functions

 native_partition (View const &view)
 Constructor that uses the underlying view's container distribution information to generate the domain partition.
 
value_type operator[] (size_t index) const
 Return the subdomain indexed by index. More...
 
native_part_type & location_partition () const
 Returns the location partition information extracted from the stored view.
 
size_t size () const
 Return the number of partitions generated.
 
View::domain_type global_domain () const
 Returns the domain associated with the stored view.
 
template<typename ODom , typename MFG >
std::vector< std::pair< domain_type, bool > > contained_in (ODom const &dom, MFG const &mfg)
 Determine which partition has the elements referenced for the given domain. More...
 

Public Types

typedef indexed_domain< size_t > domain_type
 
typedef domain_type::index_type index_type
 
typedef native_part_type::value_type::domain_type value_type
 
typedef value_type::index_type gid_type
 

Detailed Description

template<typename View>
struct stapl::view_impl::native_partition< View >

Represent a collection of domains that matches how the data in distributed on the underlying container associated with the given view.

Template Parameters
Viewgiven to create the partition.

Member Function Documentation

◆ operator[]()

template<typename View >
value_type stapl::view_impl::native_partition< View >::operator[] ( size_t  index) const

Return the subdomain indexed by index.

All the indexes contained in the returned domain reference elements that are in the same location.

Parameters
indexof the domain to return
Returns
the domain associated with index

◆ contained_in()

template<typename View >
template<typename ODom , typename MFG >
std::vector<std::pair<domain_type,bool> > stapl::view_impl::native_partition< View >::contained_in ( ODom const &  dom,
MFG const &  mfg 
)

Determine which partition has the elements referenced for the given domain.

The returned information is a collection (possibly empty) of pairs. Each pair contains information about which partitions are included in the given domain and how they are included (True: if is fully contained, False: if it is partially included). The returned collection only has elements if there is at least one partition that contains elements on the given domain.

Example:
Partition: [0..3],[4..6],[7..9],[10..13]
Given domain: [2..9]
Returns: {([0..0],False),([1..2],True)}
Parameters
domDomain to compare
mfgMapping function generator used to get the associated mapping function to each partition. The generated mapping function is used to project generated partitioned domains into the given domain.
Returns
a vector of pairs.

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