VTK-m  2.0
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::TypeListBaseC
vtkm::ListAppend< vtkm::TypeListScalarAll, vtkm::List< bool, char, signed VTKM_UNUSED_INT_TYPE, unsigned VTKM_UNUSED_INT_TYPE > > TypeListBaseC
Definition: TypeList.h:114
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:1044
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:1050
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:1166
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:1172
vtkm::ListAppend
typename detail::ListAppendImpl< Lists... >::type ListAppend
Concatinates a set of lists into a single list.
Definition: List.h:275
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:960
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:966
vtkm::Int16
int16_t Int16
Definition: Types.h:158
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:1136
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:1078
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:1020
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:938
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:932
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:1056
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:902
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:908
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:1154
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:1026
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:1194
vtkm::Int8
int8_t Int8
Definition: Types.h:156
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:972
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:1072
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:1090
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:1188
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:954
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:1160
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:1038
vtkm::UInt8
uint8_t UInt8
Definition: Types.h:157
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:920
vtkm::Vec
A short fixed-length array.
Definition: Types.h:767
vtkm::UInt32
uint32_t UInt32
Definition: Types.h:161
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:926
vtkm::Float32
float Float32
Definition: Types.h:154
vtkm::List
Definition: List.h:34
vtkm::Int32
int32_t Int32
Definition: Types.h:160
vtkm::Float64
double Float64
Definition: Types.h:155
vtkm::UInt16
uint16_t UInt16
Definition: Types.h:159
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:1200
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:1084
List.h