VTK-m  2.1
TypeList.h
Go to the documentation of this file.
1 //============================================================================
2 // Copyright (c) Kitware, Inc.
3 // All rights reserved.
4 // See LICENSE.txt for details.
5 //
6 // This software is distributed WITHOUT ANY WARRANTY; without even
7 // the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
8 // PURPOSE. See the above copyright notice for more information.
9 //============================================================================
10 #ifndef vtk_m_TypeList_h
11 #define vtk_m_TypeList_h
12 
13 #include <vtkm/List.h>
14 #include <vtkm/Types.h>
15 
16 namespace vtkm
17 {
18 
22 
26 
30 
34 
38 
43 
48 
53 
58 
63 
74 
87 
100  vtkm::Int32,
101  vtkm::UInt32,
102  vtkm::Int64,
103  vtkm::UInt64,
106 
107 // A list that containes all the base arithmetric C types (i.e. char, int, float, etc.).
108 // The list contains C types that are functionally equivalent but considered different
109 // types (e.g. it contains both `char` and `signed char`).
112  // Other base C types that are the same as above but
113  // recognized as different by the compiler
115 
135 
136 namespace internal
137 {
138 
143 using TypeListVecUncommon = vtkm::List<vtkm::Vec2i_8,
158 
159 } // namespace internal
160 
164 using TypeListVecAll =
166 
172 
177  vtkm::Int32,
178  vtkm::Int64,
183 
184 } // namespace vtkm
185 
186 #endif //vtk_m_TypeList_h
vtkm::Vec3i_16
vtkm::Vec< vtkm::Int16, 3 > Vec3i_16
Vec3i_16 corresponds to a 3-dimensional vector of 16-bit integer values.
Definition: Types.h:1082
vtkm::Vec3i_32
vtkm::Vec< vtkm::Int32, 3 > Vec3i_32
Vec3i_32 corresponds to a 3-dimensional vector of 32-bit integer values.
Definition: Types.h:1088
vtkm
Groups connected points that have the same field value.
Definition: Atomic.h:19
vtkm::Vec4i_32
vtkm::Vec< vtkm::Int32, 4 > Vec4i_32
Vec4i_32 corresponds to a 4-dimensional vector of 32-bit integer values.
Definition: Types.h:1204
Types.h
vtkm::Vec4i_64
vtkm::Vec< vtkm::Int64, 4 > Vec4i_64
Vec4i_64 corresponds to a 4-dimensional vector of 64-bit integer values.
Definition: Types.h:1210
vtkm::ListAppend
typename detail::ListAppendImpl< Lists... >::type ListAppend
Concatinates a set of lists into a single list.
Definition: List.h:281
vtkm::Vec2ui_16
vtkm::Vec< vtkm::UInt16, 2 > Vec2ui_16
Vec2ui_16 corresponds to a 2-dimensional vector of 16-bit unsigned integer values.
Definition: Types.h:998
vtkm::Vec2ui_32
vtkm::Vec< vtkm::UInt32, 2 > Vec2ui_32
Vec2ui_32 corresponds to a 2-dimensional vector of 32-bit unsigned integer values.
Definition: Types.h:1004
vtkm::Int16
int16_t Int16
Base type to use for 16-bit signed integer numbers.
Definition: Types.h:173
vtkm::Vec4f_32
vtkm::Vec< vtkm::Float32, 4 > Vec4f_32
Vec4f_32 corresponds to a 4-dimensional vector of 32-bit floating point values.
Definition: Types.h:1174
vtkm::TypeListScalarAll
vtkm::List< vtkm::Int8, vtkm::UInt8, vtkm::Int16, vtkm::UInt16, vtkm::Int32, vtkm::UInt32, vtkm::Int64, vtkm::UInt64, vtkm::Float32, vtkm::Float64 > TypeListScalarAll
A list of all scalars defined in vtkm/Types.h.
Definition: TypeList.h:105
vtkm::Vec3ui_16
vtkm::Vec< vtkm::UInt16, 3 > Vec3ui_16
Vec3ui_16 corresponds to a 3-dimensional vector of 16-bit unsigned integer values.
Definition: Types.h:1116
vtkm::Vec3f_32
vtkm::Vec< vtkm::Float32, 3 > Vec3f_32
Vec3f_32 corresponds to a 3-dimensional vector of 32-bit floating point values.
Definition: Types.h:1058
vtkm::Vec2i_64
vtkm::Vec< vtkm::Int64, 2 > Vec2i_64
Vec2i_64 corresponds to a 2-dimensional vector of 64-bit integer values.
Definition: Types.h:976
vtkm::Vec2i_32
vtkm::Vec< vtkm::Int32, 2 > Vec2i_32
Vec2i_32 corresponds to a 2-dimensional vector of 32-bit integer values.
Definition: Types.h:970
vtkm::Vec3i_64
vtkm::Vec< vtkm::Int64, 3 > Vec3i_64
Vec3i_64 corresponds to a 3-dimensional vector of 64-bit integer values.
Definition: Types.h:1094
vtkm::Vec2f_32
vtkm::Vec< vtkm::Float32, 2 > Vec2f_32
Vec2f_32 corresponds to a 2-dimensional vector of 32-bit floating point values.
Definition: Types.h:940
vtkm::Vec2f_64
vtkm::Vec< vtkm::Float64, 2 > Vec2f_64
Vec2f_64 corresponds to a 2-dimensional vector of 64-bit floating point values.
Definition: Types.h:946
vtkm::Vec4i_8
vtkm::Vec< vtkm::Int8, 4 > Vec4i_8
Vec4i_8 corresponds to a 4-dimensional vector of 8-bit integer values.
Definition: Types.h:1192
vtkm::Vec3f_64
vtkm::Vec< vtkm::Float64, 3 > Vec3f_64
Vec3f_64 corresponds to a 3-dimensional vector of 64-bit floating point values.
Definition: Types.h:1064
vtkm::Vec4ui_16
vtkm::Vec< vtkm::UInt16, 4 > Vec4ui_16
Vec4ui_16 corresponds to a 4-dimensional vector of 16-bit unsigned integer values.
Definition: Types.h:1232
vtkm::Int8
int8_t Int8
Base type to use for 8-bit signed integer numbers.
Definition: Types.h:165
vtkm::Vec2ui_64
vtkm::Vec< vtkm::UInt64, 2 > Vec2ui_64
Vec2ui_64 corresponds to a 2-dimensional vector of 64-bit unsigned integer values.
Definition: Types.h:1010
vtkm::Vec3ui_8
vtkm::Vec< vtkm::UInt8, 3 > Vec3ui_8
Vec3ui_8 corresponds to a 3-dimensional vector of 8-bit unsigned integer values.
Definition: Types.h:1110
vtkm::Vec3ui_64
vtkm::Vec< vtkm::UInt64, 3 > Vec3ui_64
Vec3ui_64 corresponds to a 3-dimensional vector of 64-bit unsigned integer values.
Definition: Types.h:1128
vtkm::TypeListAll
vtkm::ListAppend< vtkm::TypeListScalarAll, vtkm::TypeListVecAll > TypeListAll
A list of all basic types listed in vtkm/Types.h.
Definition: TypeList.h:171
vtkm::Vec4ui_8
vtkm::Vec< vtkm::UInt8, 4 > Vec4ui_8
Vec4ui_8 corresponds to a 4-dimensional vector of 8-bit unsigned integer values.
Definition: Types.h:1226
vtkm::Vec2ui_8
vtkm::Vec< vtkm::UInt8, 2 > Vec2ui_8
Vec2ui_8 corresponds to a 2-dimensional vector of 8-bit unsigned integer values.
Definition: Types.h:992
vtkm::Vec4i_16
vtkm::Vec< vtkm::Int16, 4 > Vec4i_16
Vec4i_16 corresponds to a 4-dimensional vector of 16-bit integer values.
Definition: Types.h:1198
vtkm::Vec3i_8
vtkm::Vec< vtkm::Int8, 3 > Vec3i_8
Vec3i_8 corresponds to a 3-dimensional vector of 8-bit integer values.
Definition: Types.h:1076
vtkm::Int64
signed long long Int64
Base type to use for 64-bit signed integer numbers.
Definition: Types.h:204
vtkm::UInt8
uint8_t UInt8
Base type to use for 8-bit unsigned integer numbers.
Definition: Types.h:169
vtkm::Vec2i_8
vtkm::Vec< vtkm::Int8, 2 > Vec2i_8
Vec2i_8 corresponds to a 2-dimensional vector of 8-bit integer values.
Definition: Types.h:958
vtkm::Vec
A short fixed-length array.
Definition: Types.h:357
vtkm::UInt32
uint32_t UInt32
Base type to use for 32-bit unsigned integer numbers.
Definition: Types.h:185
vtkm::TypeListVecAll
vtkm::ListAppend< vtkm::TypeListVecCommon, vtkm::internal::TypeListVecUncommon > TypeListVecAll
A list of all vector classes with standard types as components and lengths between 2 and 4.
Definition: TypeList.h:165
vtkm::Vec2i_16
vtkm::Vec< vtkm::Int16, 2 > Vec2i_16
Vec2i_16 corresponds to a 2-dimensional vector of 16-bit integer values.
Definition: Types.h:964
vtkm::Float32
float Float32
Base type to use for 32-bit floating-point numbers.
Definition: Types.h:157
vtkm::UInt64
unsigned long long UInt64
Base type to use for 64-bit signed integer numbers.
Definition: Types.h:207
vtkm::List
A template used to hold a list of types.
Definition: List.h:39
vtkm::Int32
int32_t Int32
Base type to use for 32-bit signed integer numbers.
Definition: Types.h:181
vtkm::Float64
double Float64
Base type to use for 64-bit floating-point numbers.
Definition: Types.h:161
vtkm::UInt16
uint16_t UInt16
Base type to use for 16-bit unsigned integer numbers.
Definition: Types.h:177
vtkm::Vec4ui_32
vtkm::Vec< vtkm::UInt32, 4 > Vec4ui_32
Vec4ui_32 corresponds to a 4-dimensional vector of 32-bit unsigned integer values.
Definition: Types.h:1238
vtkm::Vec3ui_32
vtkm::Vec< vtkm::UInt32, 3 > Vec3ui_32
Vec3ui_32 corresponds to a 3-dimensional vector of 32-bit unsigned integer values.
Definition: Types.h:1122
vtkm::TypeListBaseC
vtkm::ListAppend< vtkm::TypeListScalarAll, vtkm::List< bool, char, signed long, unsigned long > > TypeListBaseC
Definition: TypeList.h:114
List.h