AI Engine API User Guide (AIE) 2023.2
Loading...
Searching...
No Matches
aie::detail::random_circular_iterator< T, Elems, Stride, Resource > Class Template Reference

#include <array_helpers.hpp>

Public Types

using difference_type = ptrdiff_t
 
using iterator_category = std::random_access_iterator_tag
 
using pointer = value_type *
 
using reference = value_type &
 
using value_type = T
 

Public Member Functions

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

Member Typedef Documentation

◆ difference_type

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
using aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::difference_type = ptrdiff_t

◆ iterator_category

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
using aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::iterator_category = std::random_access_iterator_tag

◆ pointer

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
using aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::pointer = value_type*

◆ reference

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
using aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::reference = value_type&

◆ value_type

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
using aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::value_type = T

Constructor & Destructor Documentation

◆ random_circular_iterator() [1/8]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
requires (!IsStatic && !IsStrideStatic)
constexpr aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::random_circular_iterator ( pointer  ptr,
size_t  elems,
size_t  stride 
)
inlineconstexpr

◆ random_circular_iterator() [2/8]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
requires (!IsStatic && IsStrideStatic)
constexpr aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::random_circular_iterator ( pointer  ptr,
size_t  elems 
)
inlineconstexpr

◆ random_circular_iterator() [3/8]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
requires (IsStatic && !IsStrideStatic)
constexpr aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::random_circular_iterator ( pointer  ptr,
size_t  stride 
)
inlineconstexpr

◆ random_circular_iterator() [4/8]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
requires (IsStatic && IsStrideStatic)
constexpr aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::random_circular_iterator ( pointer  ptr)
inlineconstexpr

◆ random_circular_iterator() [5/8]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
requires (!IsStatic && !IsStrideStatic)
constexpr aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::random_circular_iterator ( pointer  ptr,
pointer  base,
size_t  elems,
size_t  stride 
)
inlineconstexpr

◆ random_circular_iterator() [6/8]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
requires (!IsStatic && IsStrideStatic)
constexpr aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::random_circular_iterator ( pointer  ptr,
pointer  base,
size_t  elems 
)
inlineconstexpr

◆ random_circular_iterator() [7/8]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
requires (IsStatic && !IsStrideStatic)
constexpr aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::random_circular_iterator ( pointer  ptr,
pointer  base,
size_t  stride 
)
inlineconstexpr

◆ random_circular_iterator() [8/8]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
template<bool IsStatic = is_static(), bool IsStrideStatic = is_stride_static()>
requires (IsStatic && IsStrideStatic)
constexpr aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::random_circular_iterator ( pointer  ptr,
pointer  base 
)
inlineconstexpr

Member Function Documentation

◆ operator!=()

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
constexpr bool aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator!= ( const random_circular_iterator< T, Elems, Stride, Resource > &  rhs)
inlineconstexpr

◆ operator*()

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
constexpr reference aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator* ( )
inlineconstexpr

◆ operator+()

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
random_circular_iterator aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator+ ( int  off) const
inline

◆ operator++() [1/2]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
random_circular_iterator & aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator++ ( )
inline

◆ operator++() [2/2]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
random_circular_iterator aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator++ ( int  )
inline

◆ operator+=()

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
random_circular_iterator & aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator+= ( int  off)
inline

◆ operator-()

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
random_circular_iterator aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator- ( int  off) const
inline

◆ operator--() [1/2]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
random_circular_iterator & aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator-- ( )
inline

◆ operator--() [2/2]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
random_circular_iterator aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator-- ( int  )
inline

◆ operator-=()

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
random_circular_iterator & aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator-= ( int  off)
inline

◆ operator->()

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
constexpr pointer aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator-> ( )
inlineconstexpr

◆ operator==()

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
constexpr bool aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator== ( const random_circular_iterator< T, Elems, Stride, Resource > &  rhs)
inlineconstexpr

◆ operator[]() [1/2]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
constexpr reference aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator[] ( difference_type  off)
inlineconstexpr

◆ operator[]() [2/2]

template<typename T , size_t Elems, size_t Stride, aie_dm_resource Resource>
constexpr reference aie::detail::random_circular_iterator< T, Elems, Stride, Resource >::operator[] ( difference_type  off) const
inlineconstexpr

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