Blaze  3.6
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
blaze::ShiftRI Struct Reference

Generic wrapper for the uniform right-shift operation. More...

#include <ShiftRI.h>

Public Member Functions

 ShiftRI (int count)
 Constructor of the ShiftRI functor. More...
 
template<typename T >
decltype(auto) BLAZE_ALWAYS_INLINE operator() (const T &a) const
 Returns the result of the uniform right-shift operation for the given objects/values. More...
 
template<typename T >
decltype(auto) BLAZE_ALWAYS_INLINE load (const T &a) const
 Returns the result of the uniform right-shift operation for the given SIMD vector. More...
 

Static Public Member Functions

template<typename T >
static constexpr bool simdEnabled ()
 Returns whether SIMD is enabled for the specified data type T. More...
 
static constexpr bool paddingEnabled ()
 Returns whether the operation supports padding, i.e. whether it can deal with zeros. More...
 

Private Attributes

int count_
 The number of bits to shift.
 

Detailed Description

Generic wrapper for the uniform right-shift operation.

Constructor & Destructor Documentation

◆ ShiftRI()

blaze::ShiftRI::ShiftRI ( int  count)
inlineexplicit

Constructor of the ShiftRI functor.

Parameters
countThe number of bits to shift.

Member Function Documentation

◆ load()

template<typename T >
decltype(auto) BLAZE_ALWAYS_INLINE blaze::ShiftRI::load ( const T &  a) const
inline

Returns the result of the uniform right-shift operation for the given SIMD vector.

Parameters
aThe SIMD vector to be shifted.
Returns
The result of the uniform right-shift operation for the given SIMD vector.

◆ operator()()

template<typename T >
decltype(auto) BLAZE_ALWAYS_INLINE blaze::ShiftRI::operator() ( const T &  a) const
inline

Returns the result of the uniform right-shift operation for the given objects/values.

Parameters
aThe given object/value to be shifted.
Returns
The result of the uniform right-shift operation for the given objects/values.

◆ paddingEnabled()

static constexpr bool blaze::ShiftRI::paddingEnabled ( )
inlinestatic

Returns whether the operation supports padding, i.e. whether it can deal with zeros.

Returns
true in case padding is supported, false if not.

◆ simdEnabled()

template<typename T >
static constexpr bool blaze::ShiftRI::simdEnabled ( )
inlinestatic

Returns whether SIMD is enabled for the specified data type T.

Returns
true in case SIMD is enabled for the data type T, false if not.

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