VTK-m  1.8
Classes | Namespaces | Macros
TypeTraits.h File Reference
#include <vtkm/Types.h>

Go to the source code of this file.

Classes

struct  vtkm::TypeTraitsUnknownTag
 Tag used to identify types that aren't Real, Integer, Scalar or Vector. More...
 
struct  vtkm::TypeTraitsRealTag
 Tag used to identify types that store real (floating-point) numbers. More...
 
struct  vtkm::TypeTraitsIntegerTag
 Tag used to identify types that store integer numbers. More...
 
struct  vtkm::TypeTraitsScalarTag
 Tag used to identify 0 dimensional types (scalars). More...
 
struct  vtkm::TypeTraitsVectorTag
 Tag used to identify 1 dimensional types (vectors). More...
 
class  vtkm::TypeTraits< T >
 The TypeTraits class provides helpful compile-time information about the basic types used in VTKm (and a few others for convenience). More...
 
struct  vtkm::TypeTraits< const T >
 
struct  vtkm::TypeTraits< vtkm::Vec< T, Size > >
 Traits for basic C++ types. More...
 
struct  vtkm::TypeTraits< vtkm::VecCConst< T > >
 Traits for VecCConst types. More...
 
struct  vtkm::TypeTraits< vtkm::VecC< T > >
 Traits for VecC types. More...
 
struct  vtkm::TypeTraits< vtkm::Pair< T, U > >
 Traits for Pair types. More...
 

Namespaces

 vtkm
 VTKM_NO_DEPRECATED_VIRTUAL.
 

Macros

#define VTKM_BASIC_REAL_TYPE(T)
 
#define VTKM_BASIC_INTEGER_TYPE(T)
 

Macro Definition Documentation

◆ VTKM_BASIC_INTEGER_TYPE

#define VTKM_BASIC_INTEGER_TYPE (   T)
Value:
template <> \
struct TypeTraits<T> \
{ \
using NumericTag = TypeTraitsIntegerTag; \
using DimensionalityTag = TypeTraitsScalarTag; \
VTKM_EXEC_CONT static T ZeroInitialization() \
{ \
using ReturnType = T; \
return ReturnType(); \
} \
};

◆ VTKM_BASIC_REAL_TYPE

#define VTKM_BASIC_REAL_TYPE (   T)
Value:
template <> \
struct TypeTraits<T> \
{ \
using NumericTag = TypeTraitsRealTag; \
using DimensionalityTag = TypeTraitsScalarTag; \
VTKM_EXEC_CONT static T ZeroInitialization() { return T(); } \
};