26 #ifndef _BLAZE_MATH_DENSE_DENSEITERATOR_H_
27 #define _BLAZE_MATH_DENSE_DENSEITERATOR_H_
57 template<
typename Type
86 template<
typename Other,
bool AF2 >
117 inline ReferenceType
operator[](
size_t index )
const;
126 inline PointerType
base()
const;
133 inline const IntrinsicType
load ()
const;
134 inline const IntrinsicType
loada()
const;
135 inline const IntrinsicType
loadu()
const;
161 template<
typename Type
174 template<
typename Type
187 template<
typename Type
189 template<
typename Other
211 template<
typename Type
227 template<
typename Type
250 template<
typename Type
265 template<
typename Type
279 template<
typename Type
294 template<
typename Type
317 template<
typename Type
332 template<
typename Type
347 template<
typename Type
370 template<
typename Type
397 template<
typename Type
419 template<
typename Type
440 template<
typename Type
460 template<
typename T1,
bool AF1,
typename T2,
bool AF2 >
463 template<
typename T1,
bool AF1,
typename T2,
bool AF2 >
466 template<
typename T1,
bool AF1,
typename T2,
bool AF2 >
469 template<
typename T1,
bool AF1,
typename T2,
bool AF2 >
472 template<
typename T1,
bool AF1,
typename T2,
bool AF2 >
475 template<
typename T1,
bool AF1,
typename T2,
bool AF2 >
478 template<
typename Type,
bool AF >
481 template<
typename Type,
bool AF >
484 template<
typename Type,
bool AF >
487 template<
typename Type,
bool AF >
500 template<
typename T1
518 template<
typename T1
536 template<
typename T1
542 return lhs.
base() < rhs.base();
554 template<
typename T1
572 template<
typename T1
578 return lhs.
base() <= rhs.base();
590 template<
typename T1
608 template<
typename Type
624 template<
typename Type
640 template<
typename Type
656 template<
typename Type
Pointer difference type of the Blaze library.
const IntrinsicType loada() const
Aligned load of the intrinsic element at the current iterator position.
Definition: DenseIterator.h:421
ValueType value_type
Type of the underlying elements.
Definition: DenseIterator.h:71
Header file for basic type definitions.
ReferenceType operator[](size_t index) const
Direct access to the underlying elements.
Definition: DenseIterator.h:320
PointerType operator->() const
Direct access to the element at the current iterator position.
Definition: DenseIterator.h:350
ptrdiff_t DifferenceType
Difference between two iterators.
Definition: DenseIterator.h:67
bool operator>(const NegativeAccuracy< A > &lhs, const T &rhs)
Greater-than comparison between a NegativeAccuracy object and a floating point value.
Definition: Accuracy.h:366
bool operator>=(const NegativeAccuracy< A > &, const T &rhs)
Greater-or-equal-than comparison between a NegativeAccuracy object and a floating point value...
Definition: Accuracy.h:442
Type ValueType
Type of the underlying elements.
Definition: DenseIterator.h:64
ReferenceType operator*() const
Direct access to the element at the current iterator position.
Definition: DenseIterator.h:335
BLAZE_ALWAYS_INLINE EnableIf< And< IsIntegral< T >, HasSize< T, 2UL > >, simd_int16_t >::Type loadu(const T *address)
Loads a vector of 2-byte integral values.
Definition: Loadu.h:74
Namespace of the Blaze C++ math library.
Definition: Blaze.h:57
Type & ReferenceType
Reference return type.
Definition: DenseIterator.h:66
const DenseIterator< Type, AF > operator+(const DenseIterator< Type, AF > &it, ptrdiff_t inc)
Addition between a DenseIterator and an integral value.
Definition: DenseIterator.h:610
const DenseIterator< Type, AF > operator-(const DenseIterator< Type, AF > &it, ptrdiff_t inc)
Subtraction between a DenseIterator and an integral value.
Definition: DenseIterator.h:642
DenseIterator & operator--()
Pre-decrement operator.
Definition: DenseIterator.h:281
const IntrinsicType load() const
Aligned load of the intrinsic element at the current iterator position.
Definition: DenseIterator.h:399
ReferenceType reference
Reference return type.
Definition: DenseIterator.h:73
PointerType ptr_
Pointer to the current element.
Definition: DenseIterator.h:143
DenseIterator & operator-=(ptrdiff_t inc)
Subtraction assignment operator.
Definition: DenseIterator.h:229
BLAZE_ALWAYS_INLINE EnableIf< And< IsIntegral< T >, HasSize< T, 2UL > >, simd_int16_t >::Type loada(const T *address)
Loads a vector of 2-byte integral values.
Definition: Loada.h:77
IteratorCategory iterator_category
The iterator category.
Definition: DenseIterator.h:70
Intrinsic characteristics of data types.The IntrinsicTrait class template provides the intrinsic char...
Definition: IntrinsicTrait.h:1232
Header file for run time assertion macros.
Type * PointerType
Pointer return type.
Definition: DenseIterator.h:65
IntrinsicTrait< Type >::Type IntrinsicType
Intrinsic type of the elements.
Definition: DenseIterator.h:77
DenseIterator & operator+=(ptrdiff_t inc)
Addition assignment operator.
Definition: DenseIterator.h:213
PointerType pointer
Pointer return type.
Definition: DenseIterator.h:72
DifferenceType difference_type
Difference between two iterators.
Definition: DenseIterator.h:74
Implementation of a generic iterator for dense vectors and matrices.The DenseIterator represents a ge...
Definition: DenseIterator.h:59
Header file for all intrinsic functionality.
PointerType base() const
Low-level access to the underlying member of the iterator.
Definition: DenseIterator.h:372
BLAZE_ALWAYS_INLINE bool checkAlignment(const T *address)
Checks the alignment of the given address.
Definition: AlignmentCheck.h:68
Header file for the alignment check function.
DenseIterator()
Default constructor for the DenseIterator class.
Definition: DenseIterator.h:163
bool operator==(const NegativeAccuracy< A > &lhs, const T &rhs)
Equality comparison between a NegativeAccuracy object and a floating point value. ...
Definition: Accuracy.h:249
bool operator!=(const NegativeAccuracy< A > &lhs, const T &rhs)
Inequality comparison between a NegativeAccuracy object and a floating point value.
Definition: Accuracy.h:289
std::random_access_iterator_tag IteratorCategory
The iterator category.
Definition: DenseIterator.h:63
const IntrinsicType loadu() const
Unaligned load of the intrinsic element at the current iterator position.
Definition: DenseIterator.h:442
#define BLAZE_INTERNAL_ASSERT(expr, msg)
Run time assertion macro for internal checks.In case of an invalid run time expression, the program execution is terminated. The BLAZE_INTERNAL_ASSERT macro can be disabled by setting the BLAZE_USER_ASSERTION flag to zero or by defining NDEBUG during the compilation.
Definition: Assert.h:101
DenseIterator & operator++()
Pre-increment operator.
Definition: DenseIterator.h:252
Header file for a safe C++ NULL pointer implementation.