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

Defines a one dimensional view over a zipped set of views. More...

Public Member Functions

 zip_view (Views... vs)
 
 zip_view (container_t *vcont, domain_type const &dom, map_func_type mfunc=map_func_type())
 
 zip_view (container_t const &vcont, domain_type const &dom, map_func_type mfunc=map_func_type())
 
 zip_view (container_t const &vcont, domain_type const &dom, map_func_type mfunc, zip_view const &)
 
bool is_valid (void) const
 
view_container_typeget_container (void) const
 
view_container_typecontainer (void)
 
view_container_typecontainer (void) const
 
domain_type const & domain (void) const
 
domain_typedomain (void)
 
void set_domain (domain_type const &dom)
 
map_func_type const & mapfunc (void) const
 
size_type size (void) const
 Returns the number of elements referenced for the view.
 
bool empty (void) const
 Returns true if the view does not reference any element.
 
View Read Operations
value_type get_element (index_t const &index) const
 Get the element index from the container. More...
 
future< value_type > get_element_split (index_t const &index) const
 Get the element index from the container. More...
 
template<class Functor >
Functor::result_type apply_get (index_t const &index, Functor f)
 Applies the provided function to the value referenced for the given index and returns the result of the operation. More...
 
template<class Functor >
Functor::result_type apply_get (index_t const &index, Functor f) const
 Applies the provided function to the value referenced for the given index and returns the result of the operation. More...
 
View Write Operations
void set_element (index_t const &index, value_t const &value)
 Set the element index in the container to value value. More...
 
template<class Functor >
void apply_set (index_t const &index, Functor f)
 Applies the provided function to the value referenced for the given index and mutates the element with the resulting value. More...
 
View Subscript Operations
reference_t operator[] (index_t const &index) const
 The bracket operator is the basic access method.
 
reference_t make_reference (index_t const &index) const
 
Sequence Iterator
Warning
Methods in the Sequence Iterator group should only be used inside a work function which is processing a segmented view.
iterator begin (void)
 
const_iterator begin (void) const
 
iterator end (void)
 
const_iterator end (void) const
 
iterator make_iterator (index_t i)
 
index_t next (index_t const &index) const
 Computes the next index based on the given index. More...
 
index_t prev (index_t const &index) const
 Computes the previous index based on the given index. More...
 
index_t advance (index_t const &index, Distance n) const
 Computes the new index after advance n positions from the given index. More...
 
long distance (index_t const &index1, index_t const &index2) const
 
bool less_than (index_t const &index1, index_t const &index2) const
 

Public Types

typedef view_impl::zip_container< Views... > container_t
 
typedef sequence_op_type::iterator iterator
 
typedef sequence_op_type::const_iterator const_iterator
 
typedef view_impl::zip_container< Views... > view_container_type
 
typedef indexed_domain< size_t > domain_type
 
typedef f_ident< size_t > map_func_type
 
typedef mf_type_helper::index_type index_type
 
typedef mf_type_helper::gid_type gid_type
 
typedef std::size_t size_type
 
using reference_t = typename view_traits< zip_view< Views... > >::reference
 
typedef detail::make_iterator< zip_view< Views... >, iteratormake_iterator_t
 

Public Attributes

view_impl::zip_container< Views... > * m_ptr
 
sptr_type m_sptr
 

Protected Member Functions

view_impl::zip_container< Views... > * container_ptr (void) const
 Returns the container's pointer.
 

Detailed Description

template<typename... Views>
class stapl::zip_view< Views >

Defines a one dimensional view over a zipped set of views.

Member Function Documentation

◆ get_container()

view_container_type* stapl::core_view< view_impl::zip_container< Views... > , indexed_domain< size_t > , f_ident< size_t > >::get_container ( void  ) const
inherited

◆ container()

view_container_type& stapl::core_view< view_impl::zip_container< Views... > , indexed_domain< size_t > , f_ident< size_t > >::container ( void  ) const
inherited

◆ get_element()

template<typename Derived>
value_type stapl::view_operations::read< Derived >::get_element ( index_t const &  index) const
inherited

Get the element index from the container.

Parameters
indexof element to get

◆ get_element_split()

template<typename Derived>
future<value_type> stapl::view_operations::read< Derived >::get_element_split ( index_t const &  index) const
inherited

Get the element index from the container.

Parameters
indexof element to get

◆ apply_get() [1/2]

template<typename Derived>
template<class Functor >
Functor::result_type stapl::view_operations::read< Derived >::apply_get ( index_t const &  index,
Functor  f 
)
inherited

Applies the provided function to the value referenced for the given index and returns the result of the operation.

Parameters
indexof element to apply the function
ffunction to apply
Returns
result of evaluate the function f on the value referenced for the index

◆ apply_get() [2/2]

template<typename Derived>
template<class Functor >
Functor::result_type stapl::view_operations::read< Derived >::apply_get ( index_t const &  index,
Functor  f 
) const
inherited

◆ set_element()

template<typename Derived>
void stapl::view_operations::write< Derived >::set_element ( index_t const &  index,
value_t const &  value 
)
inherited

Set the element index in the container to value value.

Parameters
indexIndex of element to set.
valueNew value to set.

◆ apply_set()

template<typename Derived>
template<class Functor >
void stapl::view_operations::write< Derived >::apply_set ( index_t const &  index,
Functor  f 
)
inherited

Applies the provided function to the value referenced for the given index and mutates the element with the resulting value.

Parameters
indexof element to apply the function
ffunction to apply

◆ next()

index_t stapl::view_operations::sequence< zip_view< Views... > , use_default >::next ( index_t const &  index) const
inherited

Computes the next index based on the given index.

Overwriting this method allows produce a different way to traverse the elements referenced by the view.

◆ prev()

index_t stapl::view_operations::sequence< zip_view< Views... > , use_default >::prev ( index_t const &  index) const
inherited

Computes the previous index based on the given index.

Overwriting this method allows produce a different way to traverse the elements referenced by the view.

◆ advance()

index_t stapl::view_operations::sequence< zip_view< Views... > , use_default >::advance ( index_t const &  index,
Distance  n 
) const
inherited

Computes the new index after advance n positions from the given index.

Overwriting this method allows produce a different way to traverse the elements referenced by the view.


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