VecCore 0.8.1
C++ Library for Portable SIMD Vectorization
Loading...
Searching...
No Matches
Interface.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  vecCore
 

Typedefs

template<typename T >
using vecCore::Mask = typename TypeTraits< T >::MaskType
 
template<typename T >
using vecCore::Index = typename TypeTraits< T >::IndexType
 
template<typename T >
using vecCore::Scalar = typename TypeTraits< T >::ScalarType
 

Functions

template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE Scalar< T > * vecCore::Begin (T &v)
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE Scalar< T > * vecCore::End (T &v)
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE Scalar< T > const * vecCore::Begin (T const &v)
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE Scalar< T > const * vecCore::End (T const &v)
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE constexpr size_t vecCore::VectorSize ()
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE Scalar< T > vecCore::Get (const T &v, size_t i)
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE void vecCore::Set (T &v, size_t i, Scalar< T > const val)
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE void vecCore::Load (T &v, Scalar< T > const *ptr)
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE void vecCore::Store (T const &v, Scalar< T > *ptr)
 
template<typename T , typename S >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICEvecCore::Gather (S const *ptr, Index< T > const &idx)
 
template<typename T , typename S >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE void vecCore::Scatter (T const &v, S *ptr, Index< T > const &idx)
 
template<typename M >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE bool vecCore::MaskFull (M const &mask)
 
template<typename M >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE bool vecCore::MaskEmpty (M const &mask)
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE void vecCore::MaskedAssign (T &dst, const Mask< T > &mask, const T &src)
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICEvecCore::Blend (const Mask< T > &mask, const T &src1, const T &src2)
 
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE constexpr bool vecCore::EarlyReturnAllowed ()
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE constexpr bool vecCore::EarlyReturnMaxLength (T &, size_t n)
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE Scalar< T > vecCore::ReduceAdd (const T &v)
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE Scalar< T > vecCore::ReduceMin (const T &v)
 
template<typename T >
VECCORE_FORCE_INLINE VECCORE_ATT_HOST_DEVICE Scalar< T > vecCore::ReduceMax (const T &v)