Vlasiator ebf0dd394 on dev (v5.4.0 + 1054 commits)
Loading...
Searching...
No Matches
VecSVEMask< base_t, N > Class Template Reference

#include <vectorclass_sve.hpp>

Inheritance diagram for VecSVEMask< base_t, N >:
Collaboration diagram for VecSVEMask< base_t, N >:

Public Types

using sve_vec_t = typename VecSVEBase<T, N>::sve_vec_t
using sve_scalar_t = typename VecSVEBase<T, N>::sve_scalar_t
Public Types inherited from VecSVEBase< sve::type< base_t >::integral, N >
using sve_vec_t
using sve_integral_t
using sve_scalar_t

Public Member Functions

 VecSVEMask ()=default
SVE_INLINE VecSVEMask (sve_vec_t *data)
SVE_INLINE VecSVEMask (const T *data)
SVE_INLINE svbool_t at (std::size_t index) const
SVE_INLINE bool any () const
SVE_INLINE bool all () const
SVE_INLINE VecSVEMask operator|| (const VecSVEMask &rhs) const
SVE_INLINE VecSVEMask operator&& (const VecSVEMask &rhs) const
SVE_INLINE VecSVEMask operator! () const
Public Member Functions inherited from VecSVEBase< sve::type< base_t >::integral, N >
sve::type< base_t >::integral operator[] (const std::size_t i) const
SVE_INLINE sve_scalar_t reduce () const
sve_scalar_tleak_ptr () const

Static Public Attributes

static constexpr std::size_t len = VecSVEBase<T, N>::len
static constexpr std::size_t elems_per_vec = VecSVEBase<T, N>::elems_per_vec
Static Public Attributes inherited from VecSVEBase< sve::type< base_t >::integral, N >
static constexpr std::size_t sve_size_bytes
static constexpr std::size_t len
static constexpr std::size_t elems_per_vec

Private Types

using T = typename sve::type<base_t>::integral

Additional Inherited Members

Protected Member Functions inherited from VecSVEBase< sve::type< base_t >::integral, N >
sve_vec_t m_data[len__attribute__ ((aligned(CACHE_LINE_SIZE)))

Detailed Description

template<typename base_t, std::size_t N>
class VecSVEMask< base_t, N >

Definition at line 603 of file vectorclass_sve.hpp.

Member Typedef Documentation

◆ sve_scalar_t

template<typename base_t, std::size_t N>
using VecSVEMask< base_t, N >::sve_scalar_t = typename VecSVEBase<T, N>::sve_scalar_t

Definition at line 609 of file vectorclass_sve.hpp.

◆ sve_vec_t

template<typename base_t, std::size_t N>
using VecSVEMask< base_t, N >::sve_vec_t = typename VecSVEBase<T, N>::sve_vec_t

Definition at line 608 of file vectorclass_sve.hpp.

◆ T

template<typename base_t, std::size_t N>
using VecSVEMask< base_t, N >::T = typename sve::type<base_t>::integral
private

Definition at line 605 of file vectorclass_sve.hpp.

Constructor & Destructor Documentation

◆ VecSVEMask() [1/3]

template<typename base_t, std::size_t N>
VecSVEMask< base_t, N >::VecSVEMask ( )
default
Here is the caller graph for this function:

◆ VecSVEMask() [2/3]

template<typename base_t, std::size_t N>
SVE_INLINE VecSVEMask< base_t, N >::VecSVEMask ( sve_vec_t * data)
inline

Definition at line 615 of file vectorclass_sve.hpp.

◆ VecSVEMask() [3/3]

template<typename base_t, std::size_t N>
SVE_INLINE VecSVEMask< base_t, N >::VecSVEMask ( const T * data)
inline

Definition at line 621 of file vectorclass_sve.hpp.

Here is the call graph for this function:

Member Function Documentation

◆ all()

template<typename base_t, std::size_t N>
SVE_INLINE bool VecSVEMask< base_t, N >::all ( ) const
inline

Definition at line 632 of file vectorclass_sve.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ any()

template<typename base_t, std::size_t N>
SVE_INLINE bool VecSVEMask< base_t, N >::any ( ) const
inline

Definition at line 630 of file vectorclass_sve.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ at()

template<typename base_t, std::size_t N>
SVE_INLINE svbool_t VecSVEMask< base_t, N >::at ( std::size_t index) const
inline

Definition at line 623 of file vectorclass_sve.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator!()

template<typename base_t, std::size_t N>
SVE_INLINE VecSVEMask VecSVEMask< base_t, N >::operator! ( ) const
inline

Definition at line 644 of file vectorclass_sve.hpp.

Here is the call graph for this function:

◆ operator&&()

template<typename base_t, std::size_t N>
SVE_INLINE VecSVEMask VecSVEMask< base_t, N >::operator&& ( const VecSVEMask< base_t, N > & rhs) const
inline

Definition at line 639 of file vectorclass_sve.hpp.

Here is the call graph for this function:

◆ operator||()

template<typename base_t, std::size_t N>
SVE_INLINE VecSVEMask VecSVEMask< base_t, N >::operator|| ( const VecSVEMask< base_t, N > & rhs) const
inline

Definition at line 634 of file vectorclass_sve.hpp.

Here is the call graph for this function:

Member Data Documentation

◆ elems_per_vec

template<typename base_t, std::size_t N>
std::size_t VecSVEMask< base_t, N >::elems_per_vec = VecSVEBase<T, N>::elems_per_vec
staticconstexpr

Definition at line 611 of file vectorclass_sve.hpp.

◆ len

template<typename base_t, std::size_t N>
std::size_t VecSVEMask< base_t, N >::len = VecSVEBase<T, N>::len
staticconstexpr

Definition at line 610 of file vectorclass_sve.hpp.


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