Go to the documentation of this file.
38 #ifndef vtkTemplateAliasMacro_h
39 #define vtkTemplateAliasMacro_h
45 #define VTK_USE_INT8 1
46 #define VTK_USE_UINT8 1
47 #define VTK_USE_INT16 1
48 #define VTK_USE_UINT16 1
49 #define VTK_USE_INT32 1
50 #define VTK_USE_UINT32 1
51 #define VTK_USE_INT64 1
52 #define VTK_USE_UINT64 1
53 #define VTK_USE_FLOAT32 1
54 #define VTK_USE_FLOAT64 1
57 #if defined(VTK_TYPE_USE___INT64) && !defined(VTK_TYPE_CONVERT_UI64_TO_DOUBLE)
58 # undef VTK_USE_UINT64
59 # define VTK_USE_UINT64 0
65 #define vtkTemplateAliasMacroCase(typeN, call) \
66 vtkTemplateAliasMacroCase0(typeN, call, VTK_TYPE_SIZED_##typeN)
67 #define vtkTemplateAliasMacroCase0(typeN, call, sized) \
68 vtkTemplateAliasMacroCase1(typeN, call, sized)
69 #define vtkTemplateAliasMacroCase1(typeN, call, sized) \
70 vtkTemplateAliasMacroCase2(typeN, call, VTK_USE_##sized)
71 #define vtkTemplateAliasMacroCase2(typeN, call, value) \
72 vtkTemplateAliasMacroCase3(typeN, call, value)
73 #define vtkTemplateAliasMacroCase3(typeN, call, value) \
74 vtkTemplateAliasMacroCase_##value(typeN, call)
75 #define vtkTemplateAliasMacroCase_0(typeN, call) \
78 vtkGenericWarningMacro("Support for VTK_" #typeN " not compiled."); \
80 #define vtkTemplateAliasMacroCase_1(typeN, call) \
83 typedef vtkTypeTraits<VTK_TYPE_NAME_##typeN>::SizedType VTK_TT; call; \
87 #if defined(VTK_TYPE_USE_LONG_LONG)
88 # define vtkTemplateAliasMacroCase_ll(typeN, call) \
89 vtkTemplateAliasMacroCase(typeN, call);
91 # define vtkTemplateAliasMacroCase_ll(typeN, call)
95 #if defined(VTK_TYPE_USE___INT64)
96 # define vtkTemplateAliasMacroCase_i64(typeN, call) \
97 vtkTemplateAliasMacroCase(typeN, call);
99 # define vtkTemplateAliasMacroCase_i64(typeN, call)
104 #define vtkTemplateAliasMacro(call) \
105 vtkTemplateAliasMacroCase(DOUBLE, call); \
106 vtkTemplateAliasMacroCase(FLOAT, call); \
107 vtkTemplateAliasMacroCase_ll(LONG_LONG, call) \
108 vtkTemplateAliasMacroCase_ll(UNSIGNED_LONG_LONG, call) \
109 vtkTemplateAliasMacroCase_i64(__INT64, call) \
110 vtkTemplateAliasMacroCase_i64(UNSIGNED___INT64, call) \
111 vtkTemplateAliasMacroCase(ID_TYPE, call); \
112 vtkTemplateAliasMacroCase(LONG, call); \
113 vtkTemplateAliasMacroCase(UNSIGNED_LONG, call); \
114 vtkTemplateAliasMacroCase(INT, call); \
115 vtkTemplateAliasMacroCase(UNSIGNED_INT, call); \
116 vtkTemplateAliasMacroCase(SHORT, call); \
117 vtkTemplateAliasMacroCase(UNSIGNED_SHORT, call); \
118 vtkTemplateAliasMacroCase(CHAR, call); \
119 vtkTemplateAliasMacroCase(SIGNED_CHAR, call); \
120 vtkTemplateAliasMacroCase(UNSIGNED_CHAR, call)