![]() |
VCTR
|
Supplies some handy typedefs and traits needed when implementing expression templates. More...
Classes | |
struct | ElementTraits |
Some common traits you want to check when constraining expression template functions. More... | |
Public Types | |
using | CommonSrcElement = ElementTraits< std::common_type_t< std::remove_const_t< ValueType< SrcTypes > >... > > |
The common type for all source element types along with its traits. | |
using | CommonElement = ElementTraits< std::common_type_t< ReturnElementType, typename CommonSrcElement::Type > > |
The common type for all source element types and the return type along with its traits. | |
using | Neon = NeonRegister< typename CommonElement::Type > |
The NeonRegister type for the common element type. | |
using | NeonSrc = NeonRegister< typename CommonSrcElement::Type > |
The NeonRegister type for the common source element type. | |
using | NeonRet = NeonRegister< ReturnElementType > |
The NeonRegister type for the common return element type. | |
using | AVX = AVXRegister< typename CommonElement::Type > |
The AVXRegister type for the common element type. | |
using | AVXSrc = AVXRegister< typename CommonSrcElement::Type > |
The AVXRegister type for the common source element type. | |
using | AVXRet = AVXRegister< ReturnElementType > |
The AVXRegister type for the common return element type. | |
using | SSE = SSERegister< typename CommonElement::Type > |
The SSERegister type for the common element type. | |
using | SSESrc = SSERegister< typename CommonSrcElement::Type > |
The SSERegister type for the common source element type. | |
using | SSERet = SSERegister< ReturnElementType > |
The SSERegister type for the common return element type. | |
using | Accelerate = PlatformVectorOps::AppleAccelerate< typename CommonElement::Type > |
The PlatformVectorOps::AppleAccelerate type for the common element type. | |
using | IPP = PlatformVectorOps::IntelIPP< typename CommonElement::Type > |
The PlatformVectorOps::IntelIPP type for the common element type. | |
Static Public Attributes | |
static constexpr auto | allElementTypesSame = are::same<ReturnElementType, std::remove_const_t<ValueType<SrcTypes>>...> |
Indicates if all source element types and the return types are same. | |
Supplies some handy typedefs and traits needed when implementing expression templates.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::Accelerate = PlatformVectorOps::AppleAccelerate<typename CommonElement::Type> |
The PlatformVectorOps::AppleAccelerate type for the common element type.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::AVX = AVXRegister<typename CommonElement::Type> |
The AVXRegister type for the common element type.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::AVXRet = AVXRegister<ReturnElementType> |
The AVXRegister type for the common return element type.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::AVXSrc = AVXRegister<typename CommonSrcElement::Type> |
The AVXRegister type for the common source element type.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::CommonElement = ElementTraits<std::common_type_t<ReturnElementType, typename CommonSrcElement::Type> > |
The common type for all source element types and the return type along with its traits.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::CommonSrcElement = ElementTraits<std::common_type_t<std::remove_const_t<ValueType<SrcTypes> >...> > |
The common type for all source element types along with its traits.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::IPP = PlatformVectorOps::IntelIPP<typename CommonElement::Type> |
The PlatformVectorOps::IntelIPP type for the common element type.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::Neon = NeonRegister<typename CommonElement::Type> |
The NeonRegister type for the common element type.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::NeonRet = NeonRegister<ReturnElementType> |
The NeonRegister type for the common return element type.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::NeonSrc = NeonRegister<typename CommonSrcElement::Type> |
The NeonRegister type for the common source element type.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::SSE = SSERegister<typename CommonElement::Type> |
The SSERegister type for the common element type.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::SSERet = SSERegister<ReturnElementType> |
The SSERegister type for the common return element type.
using vctr::ExpressionTemplateBase::ExpressionTypes< ReturnElementType, SrcTypes >::SSESrc = SSERegister<typename CommonSrcElement::Type> |
The SSERegister type for the common source element type.
|
staticconstexpr |
Indicates if all source element types and the return types are same.