|
Bolt
1.3
C++ template library with support for OpenCL
|
#include <permutation_iterator.h>
Public Types | |
|
typedef std::iterator < permutation_iterator_tag, typename element_type, int > ::difference_type | difference_type |
|
typedef permutation_iterator < element_type, key_type > | perm_iterator |
|
typedef iterator_traits < element_type >::value_type | value_type |
|
typedef iterator_traits < key_type >::value_type | index_type |
|
typedef concurrency::array_view < value_type > | arrayview_type |
Public Member Functions | |
| permutation_iterator (element_type ivalue, key_type ikey, const control &ctl=control::getDefault()) | |
| template<typename OtherValType , typename OtherKeyType > | |
| permutation_iterator (const permutation_iterator< OtherValType, OtherKeyType > &rhs) | |
|
permutation_iterator < element_type, key_type > & | operator= (const permutation_iterator< element_type, key_type > &rhs) |
|
permutation_iterator < element_type, key_type > & | operator+= (const difference_type &n) const restrict(cpu |
|
const permutation_iterator < element_type, key_type > | operator+ (const difference_type &n) const restrict(cpu |
| result | advance (n) |
|
const permutation_iterator < element_type, key_type > | operator- (const difference_type &n) const restrict(cpu |
| result | advance (-n) |
|
const concurrency::array_view < int > & | getBuffer (perm_iterator itr) const |
|
const permutation_iterator < element_type, key_type > & | getContainer () const |
| difference_type | operator- (const permutation_iterator< element_type, key_type > &rhs) const |
| void | advance (difference_type n) restrict(cpu |
|
permutation_iterator < element_type, key_type > | operator++ () |
|
permutation_iterator < element_type, key_type > | operator++ (int) |
|
permutation_iterator < element_type, key_type > | operator-- () const |
|
permutation_iterator < element_type, key_type > | operator-- (int) const |
| difference_type | getIndex () const |
| template<typename OtherValue , typename OtherKey > | |
| bool | operator== (const permutation_iterator< OtherValue, OtherKey > &rhs) const |
| template<typename OtherValue , typename OtherKey > | |
| bool | operator!= (const permutation_iterator< OtherValue, OtherKey > &rhs) const |
| template<typename OtherValue , typename OtherKey > | |
| bool | operator< (const permutation_iterator< OtherValue, OtherKey > &rhs) const |
| value_type & | operator* () const restrict(cpu |
| value_type & | operator[] (int x) restrict(cpu |
| value_type & | operator[] (int x) const restrict(cpu |
Public Attributes | |
| permutation_iterator < element_type, key_type > | amp |
| return * | this |
| const permutation_iterator < element_type, key_type > | amp |
| return | result |
| difference_type | m_Index |
| void | amp |
| value_type | amp |
| return | element_iterator [temp_index] |
| key_type | key_iterator |
| element_type | element_iterator |
Friends | |
| template<typename , typename > | |
| class | permutation_iterator |
permutation_iterator permutes values in a range according to keys.
The following example demonstrates how to use a permutation_iterator.
1.8.3