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

Defines an explicit one dimensional domain composed of indexes. The order of the indexes in the domain is given by the user. Each index that is valid in this domain must be explicitly enumerated. More...

Public Member Functions

 explicit_domain (sequence_type const &sequence, bool is_cont_dom=false)
 Construct the domain with the elements of a std vector. The order of the elements is maintained. More...
 
 explicit_domain (index_type const &lower, index_type const &upper, explicit_domain const &other)
 Constructs a new domain by restricting the given other domain to be [lower..upper].
 
index_type first (void) const
 
index_type last (void) const
 
index_type open_last (void) const
 Returns termination value for comparison. More...
 
bool contains (index_type const &idx) const
 
size_type size (void) const
 
bool empty (void) const
 
bool is_same_container_domain (void) const
 
template<typename Distance >
index_type advance (index_type const &idx, Distance n) const
 
size_type distance (index_type const &i0, index_type const &i1) const
 
explicit_domain operator & (explicit_domain const &other) const
 Returns the intersection between this domain and the given other domain.
 
sequence_type const & get_sequence (void) const
 

Public Types

typedef T gid_type
 
typedef gid_type index_type
 
typedef std::size_t size_type
 
typedef std::vector< T > sequence_type
 

Detailed Description

template<typename T>
class stapl::explicit_domain< T >

Defines an explicit one dimensional domain composed of indexes. The order of the indexes in the domain is given by the user. Each index that is valid in this domain must be explicitly enumerated.

Template Parameters
TIndex type.

Constructor & Destructor Documentation

◆ explicit_domain()

template<typename T >
stapl::explicit_domain< T >::explicit_domain ( sequence_type const &  sequence,
bool  is_cont_dom = false 
)

Construct the domain with the elements of a std vector. The order of the elements is maintained.

Parameters
sequencesequence of indexes.
is_cont_domtrue if represents the entire domain of a pContainer.

Member Function Documentation

◆ first()

template<typename T >
index_type stapl::explicit_domain< T >::first ( void  ) const

◆ last()

template<typename T >
index_type stapl::explicit_domain< T >::last ( void  ) const

◆ open_last()

template<typename T >
index_type stapl::explicit_domain< T >::open_last ( void  ) const

Returns termination value for comparison.

◆ contains()

template<typename T >
bool stapl::explicit_domain< T >::contains ( index_type const &  idx) const

◆ size()

template<typename T >
size_type stapl::explicit_domain< T >::size ( void  ) const

◆ empty()

template<typename T >
bool stapl::explicit_domain< T >::empty ( void  ) const

◆ is_same_container_domain()

template<typename T >
bool stapl::explicit_domain< T >::is_same_container_domain ( void  ) const

◆ advance()

template<typename T >
template<typename Distance >
index_type stapl::explicit_domain< T >::advance ( index_type const &  idx,
Distance  n 
) const


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