libsimdpp  1.0
simdpp::float64< N, void > Class Template Reference

Class representing a float64 vector of arbitrary length. More...

Inheritance diagram for simdpp::float64< N, void >:

Public Types

using element_type = double
 
using base_vector_type = float64v
 
using expr_type = void
 
- Public Types inherited from simdpp::any_float64< N, float64< N, void > >
using element_type = double
 
using uint_element_type = uint64_t
 
using int_vector_type = int64< N >
 
using uint_vector_type = uint64< N >
 
using mask_vector_type = mask_float64< N >
 

Public Member Functions

 float64 ()=default
 
 float64 (const float64< N > &)=default
 
float64< N > & operator= (const float64< N > &)=default
 
template<class E >
 float64 (const float64< N, E > &d)
 
template<class V >
 float64 (const any_vec< N *8, V > &d)
 
template<class V >
float64< N > & operator= (const any_vec< N *8, V > &d)
 
const float64voperator[] (unsigned i) const
 
float64voperator[] (unsigned i)
 
float64< N > eval () const
 

Static Public Member Functions

static float64< N > zero ()
 Creates a float64 vector with the contents set to zero. More...
 

Static Public Attributes

static const unsigned type_tag = SIMDPP_TAG_FLOAT
 
- Static Public Attributes inherited from simdpp::any_float64< N, float64< N, void > >
static const unsigned length
 
static const unsigned vec_length
 
static const unsigned num_bits
 
static const uint_element_type all_bits
 
- Static Public Attributes inherited from simdpp::any_vec64< N, float64< N, void > >
static const unsigned size_tag
 
- Static Public Attributes inherited from simdpp::any_vec< N *8, float64< N, void > >
static const unsigned length_bytes
 

Detailed Description

template<unsigned N>
class simdpp::float64< N, void >

Class representing a float64 vector of arbitrary length.

The vector always contains at least one native vector.

Member Typedef Documentation

template<unsigned N>
using simdpp::float64< N, void >::base_vector_type = float64v
template<unsigned N>
using simdpp::float64< N, void >::element_type = double
template<unsigned N>
using simdpp::float64< N, void >::expr_type = void

Constructor & Destructor Documentation

template<unsigned N>
simdpp::float64< N, void >::float64 ( )
default
template<unsigned N>
simdpp::float64< N, void >::float64 ( const float64< N > &  )
default
template<unsigned N>
template<class E >
simdpp::float64< N, void >::float64 ( const float64< N, E > &  d)
inline
template<unsigned N>
template<class V >
simdpp::float64< N, void >::float64 ( const any_vec< N *8, V > &  d)
inlineexplicit

Member Function Documentation

template<unsigned N>
float64<N> simdpp::float64< N, void >::eval ( ) const
inline
template<unsigned N>
float64<N>& simdpp::float64< N, void >::operator= ( const float64< N > &  )
default
template<unsigned N>
template<class V >
float64<N>& simdpp::float64< N, void >::operator= ( const any_vec< N *8, V > &  d)
inline
template<unsigned N>
const float64v& simdpp::float64< N, void >::operator[] ( unsigned  i) const
inline
template<unsigned N>
float64v& simdpp::float64< N, void >::operator[] ( unsigned  i)
inline
template<unsigned N>
static float64<N> simdpp::float64< N, void >::zero ( )
inlinestatic

Creates a float64 vector with the contents set to zero.

r0 = 0.0f
...
rN = 0.0f

Member Data Documentation

template<unsigned N>
const unsigned simdpp::float64< N, void >::type_tag = SIMDPP_TAG_FLOAT
static

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