![]() |
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.