ROOT  6.06/09
Reference Guide
Public Types | Public Member Functions | Private Attributes | Friends | List of all members
ROOT::Vc::SSE::Mask< VectorSize > Class Template Reference

template<unsigned int VectorSize>
class ROOT::Vc::SSE::Mask< VectorSize >

Definition at line 47 of file mask.h.

Public Types

typedef Mask< VectorSize > Argument
 

Public Member Functions

Vc_ALWAYS_INLINE Mask ()
 
Vc_ALWAYS_INLINE Mask (const __m128 &x)
 
Vc_ALWAYS_INLINE Mask (const __m128d &x)
 
Vc_ALWAYS_INLINE Mask (const __m128i &x)
 
Vc_ALWAYS_INLINE Mask (VectorSpecialInitializerZero::ZEnum)
 
Vc_ALWAYS_INLINE Mask (VectorSpecialInitializerOne::OEnum)
 
Vc_ALWAYS_INLINE Mask (bool b)
 
Vc_ALWAYS_INLINE Mask (const Mask &rhs)
 
Vc_ALWAYS_INLINE Mask (const Mask< VectorSize/2 > *a)
 
Vc_ALWAYS_INLINE Mask (const Float8Mask &m)
 
template<unsigned int OtherSize>
Vc_ALWAYS_INLINE_L Mask (const Mask< OtherSize > &x) Vc_ALWAYS_INLINE_R
 
void expand (Mask< VectorSize/2 > *x) const
 
Vc_ALWAYS_INLINE Vc_PURE bool operator== (const Mask &rhs) const
 
Vc_ALWAYS_INLINE Vc_PURE bool operator!= (const Mask &rhs) const
 
Vc_ALWAYS_INLINE Vc_PURE Mask operator! () const
 
Vc_ALWAYS_INLINE Maskoperator&= (const Mask &rhs)
 
Vc_ALWAYS_INLINE Maskoperator|= (const Mask &rhs)
 
Vc_ALWAYS_INLINE Maskoperator^= (const Mask &rhs)
 
Vc_ALWAYS_INLINE Vc_PURE bool isFull () const
 
Vc_ALWAYS_INLINE Vc_PURE bool isEmpty () const
 
Vc_ALWAYS_INLINE Vc_PURE bool isMix () const
 
Vc_ALWAYS_INLINE Vc_PURE operator bool () const
 
Vc_ALWAYS_INLINE_L Vc_PURE_L int shiftMask () const Vc_ALWAYS_INLINE_R Vc_PURE_R
 
Vc_ALWAYS_INLINE_L Vc_PURE_L int toInt () const Vc_ALWAYS_INLINE_R Vc_PURE_R
 
Vc_ALWAYS_INLINE Vc_PURE _M128 data () const
 
Vc_ALWAYS_INLINE Vc_PURE _M128I dataI () const
 
Vc_ALWAYS_INLINE Vc_PURE _M128D dataD () const
 
template<unsigned int OtherSize>
Vc_ALWAYS_INLINE Vc_PURE Mask< OtherSize > cast () const
 
Vc_ALWAYS_INLINE_L Vc_PURE_L bool operator[] (int index) const Vc_ALWAYS_INLINE_R Vc_PURE_R
 
Vc_ALWAYS_INLINE_L Vc_PURE_L int count () const Vc_ALWAYS_INLINE_R Vc_PURE_R
 
Vc_ALWAYS_INLINE_L Vc_PURE_L int firstOne () const Vc_ALWAYS_INLINE_R Vc_PURE_R
 Returns the index of the first one in the mask. More...
 
template<>
Vc_ALWAYS_INLINE Mask (const Mask< 4 > &x)
 
template<>
Vc_ALWAYS_INLINE Mask (const Mask< 8 > &x)
 
template<>
Vc_ALWAYS_INLINE Mask (const Mask< 16 > &x)
 
template<>
Vc_ALWAYS_INLINE Mask (const Mask< 2 > &x)
 
template<>
Vc_ALWAYS_INLINE Mask (const Mask< 8 > &x)
 
template<>
Vc_ALWAYS_INLINE Mask (const Mask< 16 > &x)
 
template<>
Vc_ALWAYS_INLINE Mask (const Mask< 2 > &x)
 
template<>
Vc_ALWAYS_INLINE Mask (const Mask< 4 > &x)
 
template<>
Vc_ALWAYS_INLINE Mask (const Mask< 16 > &x)
 
template<>
void expand (Mask< 2 > *x) const
 
template<>
void expand (Mask< 4 > *x) const
 
template<>
void expand (Mask< 8 > *x) const
 
template<>
Vc_ALWAYS_INLINE Vc_PURE int toInt () const
 
template<>
Vc_ALWAYS_INLINE Vc_PURE int toInt () const
 
template<>
Vc_ALWAYS_INLINE Vc_PURE int toInt () const
 
template<>
Vc_ALWAYS_INLINE Vc_PURE int toInt () const
 
template<>
Vc_ALWAYS_INLINE Vc_PURE bool operator[] (int index) const
 
template<>
Vc_ALWAYS_INLINE Vc_PURE bool operator[] (int index) const
 
template<>
Vc_ALWAYS_INLINE Vc_PURE bool operator[] (int index) const
 
template<>
Vc_ALWAYS_INLINE Vc_PURE bool operator[] (int index) const
 
template<>
Vc_ALWAYS_INLINE Vc_PURE int count () const
 
template<>
Vc_ALWAYS_INLINE Vc_PURE int count () const
 
template<>
Vc_ALWAYS_INLINE Vc_PURE int count () const
 
template<>
Vc_ALWAYS_INLINE Vc_PURE int count () const
 

Private Attributes

_M128 k
 

Friends

class Mask< 2u >
 
class Mask< 4u >
 
class Mask< 8u >
 
class Mask< 16u >
 
class Float8Mask
 

#include </mnt/vdb/lsf/workspace/root-makedoc-v606/rootspi/rdoc/src/v6-06-00-patches/math/vc/include/Vc/sse/mask.h>

Member Typedef Documentation

template<unsigned int VectorSize>
typedef Mask<VectorSize> ROOT::Vc::SSE::Mask< VectorSize >::Argument

Definition at line 62 of file mask.h.

Constructor & Destructor Documentation

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< VectorSize >::Mask ( )
inline

Definition at line 65 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< VectorSize >::Mask ( const __m128 &  x)
inline

Definition at line 66 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< VectorSize >::Mask ( const __m128d &  x)
inline

Definition at line 67 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< VectorSize >::Mask ( const __m128i &  x)
inline

Definition at line 68 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< VectorSize >::Mask ( VectorSpecialInitializerZero::ZEnum  )
inlineexplicit

Definition at line 69 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< VectorSize >::Mask ( VectorSpecialInitializerOne::OEnum  )
inlineexplicit

Definition at line 70 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< VectorSize >::Mask ( bool  b)
inlineexplicit

Definition at line 71 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< VectorSize >::Mask ( const Mask< VectorSize > &  rhs)
inline

Definition at line 72 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< VectorSize >::Mask ( const Mask< VectorSize/2 > *  a)
inline

Definition at line 73 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< VectorSize >::Mask ( const Float8Mask< VectorSize > &  m)
explicit

Definition at line 504 of file mask.h.

template<unsigned int VectorSize>
template<unsigned int OtherSize>
Vc_ALWAYS_INLINE_L ROOT::Vc::SSE::Mask< VectorSize >::Mask ( const Mask< OtherSize > &  x)
explicit
template<>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< 2 >::Mask ( const Mask< 4 > &  x)

Definition at line 196 of file mask.h.

template<>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< 2 >::Mask ( const Mask< 8 > &  x)

Definition at line 199 of file mask.h.

template<>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< 2 >::Mask ( const Mask< 16 > &  x)

Definition at line 203 of file mask.h.

template<>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< 4 >::Mask ( const Mask< 2 > &  x)

Definition at line 208 of file mask.h.

template<>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< 4 >::Mask ( const Mask< 8 > &  x)

Definition at line 211 of file mask.h.

template<>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< 4 >::Mask ( const Mask< 16 > &  x)

Definition at line 214 of file mask.h.

template<>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< 8 >::Mask ( const Mask< 2 > &  x)

Definition at line 218 of file mask.h.

template<>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< 8 >::Mask ( const Mask< 4 > &  x)

Definition at line 222 of file mask.h.

template<>
Vc_ALWAYS_INLINE ROOT::Vc::SSE::Mask< 8 >::Mask ( const Mask< 16 > &  x)

Definition at line 225 of file mask.h.

Member Function Documentation

template<unsigned int VectorSize>
template<unsigned int OtherSize>
Vc_ALWAYS_INLINE Vc_PURE Mask<OtherSize> ROOT::Vc::SSE::Mask< VectorSize >::cast ( ) const
inline

Definition at line 138 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE_L Vc_PURE_L int ROOT::Vc::SSE::Mask< VectorSize >::count ( ) const
template<>
Vc_ALWAYS_INLINE Vc_PURE int ROOT::Vc::SSE::Mask< 2 >::count ( ) const

Definition at line 252 of file mask.h.

template<>
Vc_ALWAYS_INLINE Vc_PURE int ROOT::Vc::SSE::Mask< 4 >::count ( ) const

Definition at line 258 of file mask.h.

template<>
Vc_ALWAYS_INLINE Vc_PURE int ROOT::Vc::SSE::Mask< 8 >::count ( ) const

Definition at line 272 of file mask.h.

template<>
Vc_ALWAYS_INLINE Vc_PURE int ROOT::Vc::SSE::Mask< 16 >::count ( ) const

Definition at line 289 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Vc_PURE _M128 ROOT::Vc::SSE::Mask< VectorSize >::data ( ) const
inline
template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Vc_PURE _M128D ROOT::Vc::SSE::Mask< VectorSize >::dataD ( ) const
inline

Definition at line 136 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Vc_PURE _M128I ROOT::Vc::SSE::Mask< VectorSize >::dataI ( ) const
inline
template<unsigned int VectorSize>
void ROOT::Vc::SSE::Mask< VectorSize >::expand ( Mask< VectorSize/2 > *  x) const
inline
template<>
void ROOT::Vc::SSE::Mask< 4 >::expand ( Mask< 2 > *  x) const
inline

Definition at line 229 of file mask.h.

template<>
void ROOT::Vc::SSE::Mask< 8 >::expand ( Mask< 4 > *  x) const
inline

Definition at line 233 of file mask.h.

template<>
void ROOT::Vc::SSE::Mask< 16 >::expand ( Mask< 8 > *  x) const
inline

Definition at line 237 of file mask.h.

template<unsigned int Size>
Vc_ALWAYS_INLINE Vc_PURE int ROOT::Vc::SSE::Mask< Size >::firstOne ( ) const

Returns the index of the first one in the mask.

The return value is undefined if the mask is empty.

Definition at line 478 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Vc_PURE bool ROOT::Vc::SSE::Mask< VectorSize >::isEmpty ( ) const
inline

Definition at line 110 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Vc_PURE bool ROOT::Vc::SSE::Mask< VectorSize >::isFull ( ) const
inline

Definition at line 103 of file mask.h.

Referenced by ROOT::Vc::SSE::Mask< VectorSize >::operator bool().

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Vc_PURE bool ROOT::Vc::SSE::Mask< VectorSize >::isMix ( ) const
inline

Definition at line 117 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Vc_PURE ROOT::Vc::SSE::Mask< VectorSize >::operator bool ( ) const
inline

Definition at line 127 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Vc_PURE Mask ROOT::Vc::SSE::Mask< VectorSize >::operator! ( ) const
inline

Definition at line 97 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Vc_PURE bool ROOT::Vc::SSE::Mask< VectorSize >::operator!= ( const Mask< VectorSize > &  rhs) const
inline

Definition at line 95 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Mask& ROOT::Vc::SSE::Mask< VectorSize >::operator&= ( const Mask< VectorSize > &  rhs)
inline

Definition at line 99 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Vc_PURE bool ROOT::Vc::SSE::Mask< VectorSize >::operator== ( const Mask< VectorSize > &  rhs) const
inline

Definition at line 94 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE_L Vc_PURE_L bool ROOT::Vc::SSE::Mask< VectorSize >::operator[] ( int  index) const
template<>
Vc_ALWAYS_INLINE Vc_PURE bool ROOT::Vc::SSE::Mask< 2 >::operator[] ( int  index) const

Definition at line 247 of file mask.h.

template<>
Vc_ALWAYS_INLINE Vc_PURE bool ROOT::Vc::SSE::Mask< 4 >::operator[] ( int  index) const

Definition at line 248 of file mask.h.

template<>
Vc_ALWAYS_INLINE Vc_PURE bool ROOT::Vc::SSE::Mask< 8 >::operator[] ( int  index) const

Definition at line 249 of file mask.h.

template<>
Vc_ALWAYS_INLINE Vc_PURE bool ROOT::Vc::SSE::Mask< 16 >::operator[] ( int  index) const

Definition at line 250 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Mask& ROOT::Vc::SSE::Mask< VectorSize >::operator^= ( const Mask< VectorSize > &  rhs)
inline

Definition at line 101 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE Mask& ROOT::Vc::SSE::Mask< VectorSize >::operator|= ( const Mask< VectorSize > &  rhs)
inline

Definition at line 100 of file mask.h.

template<unsigned int Size>
Vc_ALWAYS_INLINE Vc_PURE int ROOT::Vc::SSE::Mask< Size >::shiftMask ( ) const

Definition at line 191 of file mask.h.

template<unsigned int VectorSize>
Vc_ALWAYS_INLINE_L Vc_PURE_L int ROOT::Vc::SSE::Mask< VectorSize >::toInt ( ) const
template<>
Vc_ALWAYS_INLINE Vc_PURE int ROOT::Vc::SSE::Mask< 2 >::toInt ( ) const

Definition at line 242 of file mask.h.

template<>
Vc_ALWAYS_INLINE Vc_PURE int ROOT::Vc::SSE::Mask< 4 >::toInt ( ) const

Definition at line 243 of file mask.h.

template<>
Vc_ALWAYS_INLINE Vc_PURE int ROOT::Vc::SSE::Mask< 8 >::toInt ( ) const

Definition at line 244 of file mask.h.

template<>
Vc_ALWAYS_INLINE Vc_PURE int ROOT::Vc::SSE::Mask< 16 >::toInt ( ) const

Definition at line 245 of file mask.h.

Friends And Related Function Documentation

template<unsigned int VectorSize>
friend class Float8Mask
friend

Definition at line 53 of file mask.h.

template<unsigned int VectorSize>
friend class Mask< 16u >
friend

Definition at line 52 of file mask.h.

template<unsigned int VectorSize>
friend class Mask< 2u >
friend

Definition at line 49 of file mask.h.

template<unsigned int VectorSize>
friend class Mask< 4u >
friend

Definition at line 50 of file mask.h.

template<unsigned int VectorSize>
friend class Mask< 8u >
friend

Definition at line 51 of file mask.h.

Member Data Documentation

template<unsigned int VectorSize>
_M128 ROOT::Vc::SSE::Mask< VectorSize >::k
private

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