AI Engine API User Guide (AIE) 2022.2
aie::detail::vector_random_circular_iterator< T, Elems, ArrayElems, Stride, Resource > Class Template Reference

#include <array_helpers.hpp>

Public Types

using difference_type = ptrdiff_t
 
using elem_type = std::remove_const_t< aie_dm_resource_remove_t< T > >
 
using iterator_category = std::forward_iterator_tag
 
using pointer = std::conditional_t< std::is_const_v< T >, const value_type *, value_type * >
 
using reference = std::conditional_t< std::is_const_v< T >, const value_type &, value_type & >
 
using value_type = vector_type
 
using vector_type = add_memory_bank_t< Resource, aie_dm_resource_set_t< vector< elem_type, Elems >, aie_dm_resource_get_v< T > >>
 

Public Member Functions

template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
constexpr vector_random_circular_iterator (T *ptr)
 
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
constexpr vector_random_circular_iterator (T *ptr, size_t elems)
 
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
constexpr vector_random_circular_iterator (T *ptr, size_t elems, size_t stride)
 
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
constexpr vector_random_circular_iterator (T *ptr, size_t stride)
 
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
constexpr vector_random_circular_iterator (T *ptr, T *base)
 
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
constexpr vector_random_circular_iterator (T *ptr, T *base, size_t elems)
 
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
constexpr vector_random_circular_iterator (T *ptr, T *base, size_t elems, size_t stride)
 
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
constexpr vector_random_circular_iterator (T *ptr, T *base, size_t stride)
 
constexpr bool operator!= (const vector_random_circular_iterator &rhs)
 
constexpr reference operator* ()
 
vector_random_circular_iterator operator+ (int off) const
 
vector_random_circular_iteratoroperator++ ()
 
vector_random_circular_iterator operator++ (int)
 
vector_random_circular_iteratoroperator+= (int off)
 
vector_random_circular_iterator operator- (int off) const
 
vector_random_circular_iteratoroperator-- ()
 
vector_random_circular_iterator operator-- (int)
 
vector_random_circular_iteratoroperator-= (int off)
 
constexpr pointer operator-> ()
 
constexpr bool operator== (const vector_random_circular_iterator &rhs)
 
constexpr reference operator[] (difference_type off)
 
constexpr reference operator[] (difference_type off) const
 

Static Public Attributes

static constexpr unsigned subbyte_elems = type_bits_v<elem_type> == 4? 2 : 1
 

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