Blaze 3.9
blaze::IsCUDAAssignable< T > Struct Template Reference

Compile time check for data types. More...

#include <IsCUDAAssignable.h>

Inherits IsCUDAAssignableHelper< T >.

Detailed Description

template<typename T>
struct blaze::IsCUDAAssignable< T >

Compile time check for data types.

This type trait tests whether or not the given template parameter is an CUDA-assignable data type (i.e. if it is a data type that can possibly and efficiently be assigned by several threads). In this context, built-in data types as well as complex numbers are not considered CUDA-assignable, whereas several vector and matrix types (as for instance DynamicVector and DynamicMatrix) can be CUDA-assignable. If the type is CUDA-assignable, the value member constant is set to true, the nested type definition Type is TrueType, and the class derives from TrueType. Otherwise value is set to false, Type is FalseType, and the class derives from FalseType.

using VectorType = DynamicVector<int,columnVector>;
VectorType a( 100UL );
using SubvectorType = decltype( blaze::subvector( a, 8UL, 16UL ) );
blaze::IsCUDAAssignable< StaticVector<int,3UL> >::Type // Results in FalseType
Efficient implementation of a dynamic matrix.
Definition: DynamicMatrix.h:242
Efficient implementation of an arbitrary sized vector.
Definition: DynamicVector.h:223
Efficient implementation of a fixed-sized matrix.
Definition: StaticMatrix.h:249
Efficient implementation of a fixed-sized vector.
Definition: StaticVector.h:230
decltype(auto) subvector(Vector< VT, TF > &, RSAs...)
Creating a view on a specific subvector of the given vector.
Definition: Subvector.h:158
Compile time check for data types.
Definition: IsCUDAAssignable.h:123

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