6 #include "vtkABINamespace.h"
9 #include "vtkOptions.h"
10 #include "vtk_kwiml.h"
12 #define VTK_SIZEOF_CHAR KWIML_ABI_SIZEOF_CHAR
13 #define VTK_SIZEOF_SHORT KWIML_ABI_SIZEOF_SHORT
14 #define VTK_SIZEOF_INT KWIML_ABI_SIZEOF_INT
15 #define VTK_SIZEOF_LONG KWIML_ABI_SIZEOF_LONG
16 #define VTK_SIZEOF_LONG_LONG KWIML_ABI_SIZEOF_LONG_LONG
17 #define VTK_SIZEOF_FLOAT KWIML_ABI_SIZEOF_FLOAT
18 #define VTK_SIZEOF_DOUBLE KWIML_ABI_SIZEOF_DOUBLE
19 #define VTK_SIZEOF_VOID_P KWIML_ABI_SIZEOF_DATA_PTR
22 #if defined(KWIML_ABI_CHAR_IS_SIGNED)
23 #define VTK_TYPE_CHAR_IS_SIGNED 1
25 #define VTK_TYPE_CHAR_IS_SIGNED 0
35 #define VTK_SIGNED_CHAR 15
36 #define VTK_UNSIGNED_CHAR 3
38 #define VTK_UNSIGNED_SHORT 5
40 #define VTK_UNSIGNED_INT 7
42 #define VTK_UNSIGNED_LONG 9
45 #define VTK_ID_TYPE 12
52 #define VTK_LONG_LONG 16
53 #define VTK_UNSIGNED_LONG_LONG 17
56 #define VTK_VARIANT 20
62 #define VTK_DEPRECATED_IN_9_7_0_TYPE(reason) VTK_DEPRECATED_IN_9_7_0(reason)
64 #define VTK_DEPRECATED_IN_9_7_0_TYPE(reason)
166 #if defined(__cplusplus)
167 #define VTK_TYPE_CAST(T, V) static_cast<T>(V)
169 #define VTK_TYPE_CAST(T, V) ((T)(V))
174 #define VTK_BIT_MIN 0
175 #define VTK_BIT_MAX 1
176 #if VTK_TYPE_CHAR_IS_SIGNED
177 #define VTK_CHAR_MIN VTK_TYPE_CAST(char, 0x80)
178 #define VTK_CHAR_MAX VTK_TYPE_CAST(char, 0x7f)
180 #define VTK_CHAR_MIN VTK_TYPE_CAST(char, 0u)
181 #define VTK_CHAR_MAX VTK_TYPE_CAST(char, 0xffu)
183 #define VTK_SIGNED_CHAR_MIN VTK_TYPE_CAST(signed char, 0x80)
184 #define VTK_SIGNED_CHAR_MAX VTK_TYPE_CAST(signed char, 0x7f)
185 #define VTK_UNSIGNED_CHAR_MIN VTK_TYPE_CAST(unsigned char, 0u)
186 #define VTK_UNSIGNED_CHAR_MAX VTK_TYPE_CAST(unsigned char, 0xffu)
187 #define VTK_SHORT_MIN VTK_TYPE_CAST(short, 0x8000)
188 #define VTK_SHORT_MAX VTK_TYPE_CAST(short, 0x7fff)
189 #define VTK_UNSIGNED_SHORT_MIN VTK_TYPE_CAST(unsigned short, 0u)
190 #define VTK_UNSIGNED_SHORT_MAX VTK_TYPE_CAST(unsigned short, 0xffffu)
191 #define VTK_INT_MIN VTK_TYPE_CAST(int, ~(~0u >> 1))
192 #define VTK_INT_MAX VTK_TYPE_CAST(int, ~0u >> 1)
193 #define VTK_UNSIGNED_INT_MIN VTK_TYPE_CAST(unsigned int, 0)
194 #define VTK_UNSIGNED_INT_MAX VTK_TYPE_CAST(unsigned int, ~0u)
195 #define VTK_LONG_MIN VTK_TYPE_CAST(long, ~(~0ul >> 1))
196 #define VTK_LONG_MAX VTK_TYPE_CAST(long, ~0ul >> 1)
197 #define VTK_UNSIGNED_LONG_MIN VTK_TYPE_CAST(unsigned long, 0ul)
198 #define VTK_UNSIGNED_LONG_MAX VTK_TYPE_CAST(unsigned long, ~0ul)
199 #define VTK_FLOAT_MIN VTK_TYPE_CAST(float, -1.0e+38f)
200 #define VTK_FLOAT_MAX VTK_TYPE_CAST(float, 1.0e+38f)
201 #define VTK_DOUBLE_MIN VTK_TYPE_CAST(double, -1.0e+299)
202 #define VTK_DOUBLE_MAX VTK_TYPE_CAST(double, 1.0e+299)
203 #define VTK_LONG_LONG_MIN VTK_TYPE_CAST(long long, ~(~0ull >> 1))
204 #define VTK_LONG_LONG_MAX VTK_TYPE_CAST(long long, ~0ull >> 1)
205 #define VTK_UNSIGNED_LONG_LONG_MIN VTK_TYPE_CAST(unsigned long long, 0ull)
206 #define VTK_UNSIGNED_LONG_LONG_MAX VTK_TYPE_CAST(unsigned long long, ~0ull)
213 #if VTK_SIZEOF_CHAR == 1
214 typedef unsigned char vtkTypeUInt8;
215 typedef signed char vtkTypeInt8;
216 #define VTK_TYPE_UINT8 VTK_UNSIGNED_CHAR
217 #define VTK_TYPE_UINT8_MIN VTK_UNSIGNED_CHAR_MIN
218 #define VTK_TYPE_UINT8_MAX VTK_UNSIGNED_CHAR_MAX
219 #define VTK_TYPE_INT8 VTK_SIGNED_CHAR
220 #define VTK_TYPE_INT8_MIN VTK_SIGNED_CHAR_MIN
221 #define VTK_TYPE_INT8_MAX VTK_SIGNED_CHAR_MAX
223 #error "No native data type can represent an 8-bit integer."
227 #if VTK_SIZEOF_SHORT == 2
228 typedef unsigned short vtkTypeUInt16;
229 typedef signed short vtkTypeInt16;
230 #define VTK_TYPE_UINT16 VTK_UNSIGNED_SHORT
231 #define VTK_TYPE_UINT16_MIN VTK_UNSIGNED_SHORT_MIN
232 #define VTK_TYPE_UINT16_MAX VTK_UNSIGNED_SHORT_MAX
233 #define VTK_TYPE_INT16 VTK_SHORT
234 #define VTK_TYPE_INT16_MIN VTK_SHORT_MIN
235 #define VTK_TYPE_INT16_MAX VTK_SHORT_MAX
236 #elif VTK_SIZEOF_INT == 2
237 typedef unsigned int vtkTypeUInt16;
238 typedef signed int vtkTypeInt16;
239 #define VTK_TYPE_UINT16 VTK_UNSIGNED_INT
240 #define VTK_TYPE_UINT16_MIN VTK_UNSIGNED_INT_MIN
241 #define VTK_TYPE_UINT16_MAX VTK_UNSIGNED_INT_MAX
242 #define VTK_TYPE_INT16 VTK_INT
243 #define VTK_TYPE_INT16_MIN VTK_INT_MIN
244 #define VTK_TYPE_INT16_MAX VTK_INT_MAX
246 #error "No native data type can represent a 16-bit integer."
250 #if VTK_SIZEOF_INT == 4
251 typedef unsigned int vtkTypeUInt32;
252 typedef signed int vtkTypeInt32;
253 #define VTK_TYPE_UINT32 VTK_UNSIGNED_INT
254 #define VTK_TYPE_UINT32_MIN VTK_UNSIGNED_INT_MIN
255 #define VTK_TYPE_UINT32_MAX VTK_UNSIGNED_INT_MAX
256 #define VTK_TYPE_INT32 VTK_INT
257 #define VTK_TYPE_INT32_MIN VTK_INT_MIN
258 #define VTK_TYPE_INT32_MAX VTK_INT_MAX
259 #elif VTK_SIZEOF_LONG == 4
260 typedef unsigned long vtkTypeUInt32;
261 typedef signed long vtkTypeInt32;
262 #define VTK_TYPE_UINT32 VTK_UNSIGNED_LONG
263 #define VTK_TYPE_UINT32_MIN VTK_UNSIGNED_LONG_MIN
264 #define VTK_TYPE_UINT32_MAX VTK_UNSIGNED_LONG_MAX
265 #define VTK_TYPE_INT32 VTK_LONG
266 #define VTK_TYPE_INT32_MIN VTK_LONG_MIN
267 #define VTK_TYPE_INT32_MAX VTK_LONG_MAX
269 #error "No native data type can represent a 32-bit integer."
273 #if VTK_SIZEOF_LONG_LONG == 8
274 typedef unsigned long long vtkTypeUInt64;
275 typedef signed long long vtkTypeInt64;
276 #define VTK_TYPE_UINT64 VTK_UNSIGNED_LONG_LONG
277 #define VTK_TYPE_UINT64_MIN VTK_UNSIGNED_LONG_LONG_MIN
278 #define VTK_TYPE_UINT64_MAX VTK_UNSIGNED_LONG_LONG_MAX
279 #define VTK_TYPE_INT64 VTK_LONG_LONG
280 #define VTK_TYPE_INT64_MIN VTK_LONG_LONG_MIN
281 #define VTK_TYPE_INT64_MAX VTK_LONG_LONG_MAX
282 #elif VTK_SIZEOF_LONG == 8
283 typedef unsigned long vtkTypeUInt64;
284 typedef signed long vtkTypeInt64;
285 #define VTK_TYPE_UINT64 VTK_UNSIGNED_LONG
286 #define VTK_TYPE_UINT64_MIN VTK_UNSIGNED_LONG_MIN
287 #define VTK_TYPE_UINT64_MAX VTK_UNSIGNED_LONG_MAX
288 #define VTK_TYPE_INT64 VTK_LONG
289 #define VTK_TYPE_INT64_MIN VTK_LONG_MIN
290 #define VTK_TYPE_INT64_MAX VTK_LONG_MAX
292 #error "No native data type can represent a 64-bit integer."
299 #if defined(VTK_USE_64BIT_TIMESTAMPS) || VTK_SIZEOF_VOID_P == 8
300 #if VTK_SIZEOF_LONG == 8
302 #define VTK_MTIME_TYPE_IMPL VTK_UNSIGNED_LONG
303 #define VTK_MTIME_MIN VTK_UNSIGNED_LONG_MIN
304 #define VTK_MTIME_MAX VTK_UNSIGNED_LONG_MAX
307 #define VTK_MTIME_TYPE_IMPL VTK_TYPE_UINT64
308 #define VTK_MTIME_MIN VTK_TYPE_UINT64_MIN
309 #define VTK_MTIME_MAX VTK_TYPE_UINT64_MAX
312 #if VTK_SIZEOF_LONG == 4
314 #define VTK_MTIME_TYPE_IMPL VTK_UNSIGNED_LONG
315 #define VTK_MTIME_MIN VTK_UNSIGNED_LONG_MIN
316 #define VTK_MTIME_MAX VTK_UNSIGNED_LONG_MAX
319 #define VTK_MTIME_TYPE_IMPL VTK_TYPE_UINT32
320 #define VTK_MTIME_MIN VTK_TYPE_UINT32_MIN
321 #define VTK_MTIME_MAX VTK_TYPE_UINT32_MAX
326 #if VTK_SIZEOF_FLOAT == 4
327 typedef float vtkTypeFloat32;
328 #define VTK_TYPE_FLOAT32 VTK_FLOAT
330 #error "No native data type can represent a 32-bit floating point value."
334 #if VTK_SIZEOF_DOUBLE == 8
335 typedef double vtkTypeFloat64;
336 #define VTK_TYPE_FLOAT64 VTK_DOUBLE
338 #error "No native data type can represent a 64-bit floating point value."
343 #define VTK_HAS_ID_TYPE
344 #ifdef VTK_USE_64BIT_IDS
345 #if VTK_SIZEOF_LONG_LONG == 8
347 #define VTK_ID_TYPE_IMPL VTK_LONG_LONG
348 #define VTK_SIZEOF_ID_TYPE VTK_SIZEOF_LONG_LONG
349 #define VTK_ID_MIN VTK_LONG_LONG_MIN
350 #define VTK_ID_MAX VTK_LONG_LONG_MAX
351 #define VTK_ID_TYPE_PRId "lld"
352 #elif VTK_SIZEOF_LONG == 8
354 #define VTK_ID_TYPE_IMPL VTK_LONG
355 #define VTK_SIZEOF_ID_TYPE VTK_SIZEOF_LONG
356 #define VTK_ID_MIN VTK_LONG_MIN
357 #define VTK_ID_MAX VTK_LONG_MAX
358 #define VTK_ID_TYPE_PRId "ld"
360 #error "VTK_USE_64BIT_IDS is ON but no 64-bit integer type is available."
364 #define VTK_ID_TYPE_IMPL VTK_INT
365 #define VTK_SIZEOF_ID_TYPE VTK_SIZEOF_INT
366 #define VTK_ID_MIN VTK_INT_MIN
367 #define VTK_ID_MAX VTK_INT_MAX
368 #define VTK_ID_TYPE_PRId "d"
383 #ifndef VTK_TYPE_BOOL_TYPEDEFED
384 #define VTK_TYPE_BOOL_TYPEDEFED
385 #if VTK_USE_FUTURE_BOOL
394 #if defined(__cplusplus)
400 VTK_ABI_NAMESPACE_BEGIN
401 inline vtkTypeBool vtkDataTypesCompare(
int a,
int b)
406 VTK_ABI_NAMESPACE_END
411 #define vtkInstantiateTemplateMacro(decl) \
416 decl<unsigned char>; \
418 decl<unsigned short>; \
420 decl<unsigned int>; \
422 decl<unsigned long>; \
424 decl<unsigned long long>
426 #define vtkInstantiateSecondOrderTemplateMacro(decl0, decl1) \
427 decl0<decl1<float>>; \
428 decl0<decl1<double>>; \
429 decl0<decl1<char>>; \
430 decl0<decl1<signed char>>; \
431 decl0<decl1<unsigned char>>; \
432 decl0<decl1<short>>; \
433 decl0<decl1<unsigned short>>; \
435 decl0<decl1<unsigned int>>; \
436 decl0<decl1<long>>; \
437 decl0<decl1<unsigned long>>; \
438 decl0<decl1<long long>>; \
439 decl0<decl1<unsigned long long>>
441 #define vtkInstantiateSecondOrderWithParameterTemplateMacro(decl0, decl1, par) \
442 decl0<decl1<float>, par>; \
443 decl0<decl1<double>, par>; \
444 decl0<decl1<char>, par>; \
445 decl0<decl1<signed char>, par>; \
446 decl0<decl1<unsigned char>, par>; \
447 decl0<decl1<short>, par>; \
448 decl0<decl1<unsigned short>, par>; \
449 decl0<decl1<int>, par>; \
450 decl0<decl1<unsigned int>, par>; \
451 decl0<decl1<long>, par>; \
452 decl0<decl1<unsigned long>, par>; \
453 decl0<decl1<long long>, par>; \
454 decl0<decl1<unsigned long long>, par>
457 #ifdef VTK_USE_EXTERN_TEMPLATE
458 #define vtkExternTemplateMacro(decl) vtkInstantiateTemplateMacro(decl)
459 #define vtkExternSecondOrderTemplateMacro(decl0, decl1) \
460 vtkInstantiateSecondOrderTemplateMacro(decl0, decl1)
461 #define vtkExternSecondOrderWithParameterTemplateMacro(decl0, decl1, par) \
462 vtkInstantiateSecondOrderWithParameterTemplateMacro(decl0, decl1, par)
464 #define vtkExternTemplateMacro(decl)
465 #define vtkExternSecondOrderTemplateMacro(decl0, decl1)
466 #define vtkExternSecondOrderWithParameterTemplateMacro(decl0, decl1, par)
vtkTypeUInt32 vtkMTimeType
unsigned int vtkTypeUBool
#define VTK_DEPRECATED_IN_9_7_0_TYPE(reason)