dune-common 2.10
Loading...
Searching...
No Matches
Dune::LoopSIMD< T, S, A > Class Template Reference

#include <dune/common/simd/loop.hh>

Inheritance diagram for Dune::LoopSIMD< T, S, A >:
Inheritance graph

Public Member Functions

 LoopSIMD ()
 
 LoopSIMD (Simd::Scalar< T > i)
 
template<std::size_t OA>
 LoopSIMD (const LoopSIMD< T, S, OA > &other)
 
 DUNE_SIMD_LOOP_PREFIX_OP (++)
 
 DUNE_SIMD_LOOP_PREFIX_OP (--)
 
 DUNE_SIMD_LOOP_UNARY_OP (+)
 
 DUNE_SIMD_LOOP_UNARY_OP (-)
 
 DUNE_SIMD_LOOP_UNARY_OP (~)
 
auto operator! () const
 
 DUNE_SIMD_LOOP_POSTFIX_OP (++)
 
 DUNE_SIMD_LOOP_POSTFIX_OP (--)
 
 DUNE_SIMD_LOOP_ASSIGNMENT_OP (+=)
 
 DUNE_SIMD_LOOP_ASSIGNMENT_OP (-=)
 
DUNE_SIMD_LOOP_ASSIGNMENT_OP * DUNE_SIMD_LOOP_ASSIGNMENT_OP (/=);DUNE_SIMD_LOOP_ASSIGNMENT_OP(%=
 
 DUNE_SIMD_LOOP_ASSIGNMENT_OP (<<=)
 
 DUNE_SIMD_LOOP_ASSIGNMENT_OP (> >=)
 
DUNE_SIMD_LOOP_ASSIGNMENT_OP & DUNE_SIMD_LOOP_ASSIGNMENT_OP (|=);DUNE_SIMD_LOOP_ASSIGNMENT_OP(^=
 
at (T... args)
 
back (T... args)
 
begin (T... args)
 
cbegin (T... args)
 
cend (T... args)
 
crbegin (T... args)
 
crend (T... args)
 
data (T... args)
 
empty (T... args)
 
end (T... args)
 
fill (T... args)
 
front (T... args)
 
max_size (T... args)
 
operator[] (T... args)
 
rbegin (T... args)
 
rend (T... args)
 
size (T... args)
 
swap (T... args)
 

Public Attributes

elements
 STL member.
 

Detailed Description

template<class T, std::size_t S, std::size_t A = 0>
class Dune::LoopSIMD< T, S, A >

This class specifies a vector-like type deriving from std::array for memory management and basic accessibility. This type is capable of dealing with all (well-defined) operators and is usable with the SIMD-interface.

Template Parameters
TBase type. Could also be vectorized type.
SSize
minimumalignment. It is inherited to rebound types.

Constructor & Destructor Documentation

◆ LoopSIMD() [1/3]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::LoopSIMD ( )
inline

◆ LoopSIMD() [2/3]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::LoopSIMD ( Simd::Scalar< T >  i)
inline

◆ LoopSIMD() [3/3]

template<class T , std::size_t S, std::size_t A = 0>
template<std::size_t OA>
Dune::LoopSIMD< T, S, A >::LoopSIMD ( const LoopSIMD< T, S, OA > &  other)
inlineexplicit

Member Function Documentation

◆ DUNE_SIMD_LOOP_ASSIGNMENT_OP() [1/6]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_ASSIGNMENT_OP ( )

◆ DUNE_SIMD_LOOP_ASSIGNMENT_OP() [2/6]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_ASSIGNMENT_OP ( )

◆ DUNE_SIMD_LOOP_ASSIGNMENT_OP() [3/6]

template<class T , std::size_t S, std::size_t A = 0>
DUNE_SIMD_LOOP_ASSIGNMENT_OP * Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_ASSIGNMENT_OP ( )

◆ DUNE_SIMD_LOOP_ASSIGNMENT_OP() [4/6]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_ASSIGNMENT_OP ( <<  )

◆ DUNE_SIMD_LOOP_ASSIGNMENT_OP() [5/6]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_ASSIGNMENT_OP ( >=  )

◆ DUNE_SIMD_LOOP_ASSIGNMENT_OP() [6/6]

template<class T , std::size_t S, std::size_t A = 0>
DUNE_SIMD_LOOP_ASSIGNMENT_OP & Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_ASSIGNMENT_OP ( )

◆ DUNE_SIMD_LOOP_POSTFIX_OP() [1/2]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_POSTFIX_OP ( ++  )

◆ DUNE_SIMD_LOOP_POSTFIX_OP() [2/2]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_POSTFIX_OP ( --  )

◆ DUNE_SIMD_LOOP_PREFIX_OP() [1/2]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_PREFIX_OP ( ++  )

◆ DUNE_SIMD_LOOP_PREFIX_OP() [2/2]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_PREFIX_OP ( --  )

◆ DUNE_SIMD_LOOP_UNARY_OP() [1/3]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_UNARY_OP ( )

◆ DUNE_SIMD_LOOP_UNARY_OP() [2/3]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_UNARY_OP ( )

◆ DUNE_SIMD_LOOP_UNARY_OP() [3/3]

template<class T , std::size_t S, std::size_t A = 0>
Dune::LoopSIMD< T, S, A >::DUNE_SIMD_LOOP_UNARY_OP ( )

◆ operator!()

template<class T , std::size_t S, std::size_t A = 0>
auto Dune::LoopSIMD< T, S, A >::operator! ( ) const
inline

Member Data Documentation

◆ elements

T std::array< T >::elements
inherited

STL member.


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