22 #ifndef __vtkWIN32Header_h
23 #define __vtkWIN32Header_h
25 #ifndef __VTK_SYSTEM_INCLUDES__INSIDE
29 #include "vtkConfigure.h"
36 #ifdef VTK_REQUIRE_LARGE_FILE_SUPPORT
37 # ifndef _LARGEFILE_SOURCE
38 # define _LARGEFILE_SOURCE
43 # ifndef _FILE_OFFSET_BITS
44 # define _FILE_OFFSET_BITS 64
50 #if defined(_WIN32) || defined(WIN32)
57 #ifdef VTK_USE_ANSI_STDLIB
66 #if defined(VTK_IN_VTK)
67 # undef VTK_INCLUDE_WINDOWS_H
72 # if defined(VTK_INCLUDE_WINDOWS_H)
75 typedef DWORD vtkWindowsDWORD;
76 typedef PVOID vtkWindowsPVOID;
77 typedef LPVOID vtkWindowsLPVOID;
78 typedef HANDLE vtkWindowsHANDLE;
79 typedef LPTHREAD_START_ROUTINE vtkWindowsLPTHREAD_START_ROUTINE;
82 typedef unsigned long vtkWindowsDWORD;
83 typedef void* vtkWindowsPVOID;
84 typedef vtkWindowsPVOID vtkWindowsLPVOID;
85 typedef vtkWindowsPVOID vtkWindowsHANDLE;
86 typedef vtkWindowsDWORD (__stdcall *vtkWindowsLPTHREAD_START_ROUTINE)(vtkWindowsLPVOID);
90 #if !defined(__WRAP__)
91 # define VTK_WORKAROUND_WINDOWS_MANGLE
94 #if ( _MSC_VER >= 1300 ) // Visual studio .NET
95 #pragma warning ( disable : 4311 )
96 #pragma warning ( disable : 4312 )
97 # define vtkGetWindowLong GetWindowLongPtr
98 # define vtkSetWindowLong SetWindowLongPtr
99 # define vtkLONG LONG_PTR
100 # define vtkGWL_WNDPROC GWLP_WNDPROC
101 # define vtkGWL_HINSTANCE GWLP_HINSTANCE
102 # define vtkGWL_USERDATA GWLP_USERDATA
103 #else // older or non-Visual studio
104 # define vtkGetWindowLong GetWindowLong
105 # define vtkSetWindowLong SetWindowLong
106 # define vtkLONG LONG
108 # define vtkGWL_WNDPROC GWLP_WNDPROC
109 # define vtkGWL_HINSTANCE GWLP_HINSTANCE
110 # define vtkGWL_USERDATA GWLP_USERDATA
112 # define vtkGWL_WNDPROC GWL_WNDPROC
113 # define vtkGWL_HINSTANCE GWL_HINSTANCE
114 # define vtkGWL_USERDATA GWL_USERDATA
120 #if defined(_MSC_VER)
122 # pragma warning ( default : 4263 )
124 # if !defined(VTK_DISPLAY_WIN32_WARNINGS)
125 # pragma warning ( disable : 4003 )
126 # pragma warning ( disable : 4097 )
127 # pragma warning ( disable : 4127 )
128 # pragma warning ( disable : 4244 )
129 # pragma warning ( disable : 4251 )
130 # pragma warning ( disable : 4305 )
131 # pragma warning ( disable : 4309 )
132 # pragma warning ( disable : 4514 )
133 # pragma warning ( disable : 4706 )
134 # pragma warning ( disable : 4710 )
135 # pragma warning ( disable : 4786 )
143 #if defined(_MSC_VER) && (_MSC_VER < 1300) && defined(NDEBUG)
144 # pragma warning ( disable : 4701 )
145 # pragma warning ( disable : 4702 )
148 #if defined(__BORLANDC__)
150 # if !defined(VTK_DISPLAY_WIN32_WARNINGS)
162 #if defined(VTK_BUILD_SHARED_LIBS)
164 #define VTK_EXPORT VTK_ABI_EXPORT
166 #if defined(vtkCommon_EXPORTS)
167 #define VTK_COMMON_EXPORT VTK_ABI_EXPORT
169 #define VTK_COMMON_EXPORT VTK_ABI_IMPORT
172 #if defined(vtkFiltering_EXPORTS)
173 #define VTK_FILTERING_EXPORT VTK_ABI_EXPORT
175 #define VTK_FILTERING_EXPORT VTK_ABI_IMPORT
178 #if defined(vtkImaging_EXPORTS)
179 #define VTK_IMAGING_EXPORT VTK_ABI_EXPORT
181 #define VTK_IMAGING_EXPORT VTK_ABI_IMPORT
184 #if defined(vtkGenericFiltering_EXPORTS)
185 #define VTK_GENERIC_FILTERING_EXPORT VTK_ABI_EXPORT
187 #define VTK_GENERIC_FILTERING_EXPORT VTK_ABI_IMPORT
190 #if defined(vtkGeovis_EXPORTS)
191 #define VTK_GEOVIS_EXPORT VTK_ABI_EXPORT
193 #define VTK_GEOVIS_EXPORT VTK_ABI_IMPORT
196 #if defined(vtkGraphics_EXPORTS)
197 #define VTK_GRAPHICS_EXPORT VTK_ABI_EXPORT
199 #define VTK_GRAPHICS_EXPORT VTK_ABI_IMPORT
202 #if defined(vtkGraphicsJava_EXPORTS)
203 #define VTK_GRAPHICS_JAVA_EXPORT VTK_ABI_EXPORT
205 #define VTK_GRAPHICS_JAVA_EXPORT VTK_ABI_IMPORT
208 #if defined(vtkInfovis_EXPORTS)
209 #define VTK_INFOVIS_EXPORT VTK_ABI_EXPORT
211 #define VTK_INFOVIS_EXPORT VTK_ABI_IMPORT
214 #if defined(vtkIO_EXPORTS)
215 #define VTK_IO_EXPORT VTK_ABI_EXPORT
217 #define VTK_IO_EXPORT VTK_ABI_IMPORT
220 #if defined(vtkRendering_EXPORTS)
221 #define VTK_RENDERING_EXPORT VTK_ABI_EXPORT
223 #define VTK_RENDERING_EXPORT VTK_ABI_IMPORT
226 #if defined(vtkTextAnalysis_EXPORTS)
227 #define VTK_TEXT_ANALYSIS_EXPORT VTK_ABI_EXPORT
229 #define VTK_TEXT_ANALYSIS_EXPORT VTK_ABI_IMPORT
232 #if defined(vtkVolumeRendering_EXPORTS)
233 #define VTK_VOLUMERENDERING_EXPORT VTK_ABI_EXPORT
235 #define VTK_VOLUMERENDERING_EXPORT VTK_ABI_IMPORT
238 #if defined(vtkHybrid_EXPORTS)
239 #define VTK_HYBRID_EXPORT VTK_ABI_EXPORT
241 #define VTK_HYBRID_EXPORT VTK_ABI_IMPORT
244 #if defined(vtkWidgets_EXPORTS)
245 #define VTK_WIDGETS_EXPORT VTK_ABI_EXPORT
247 #define VTK_WIDGETS_EXPORT VTK_ABI_IMPORT
250 #if defined(vtkParallel_EXPORTS)
251 #define VTK_PARALLEL_EXPORT VTK_ABI_EXPORT
253 #define VTK_PARALLEL_EXPORT VTK_ABI_IMPORT
256 #if defined(vtkViews_EXPORTS)
257 #define VTK_VIEWS_EXPORT VTK_ABI_EXPORT
259 #define VTK_VIEWS_EXPORT VTK_ABI_IMPORT
262 #if defined(vtkCharts_EXPORTS)
263 #define VTK_CHARTS_EXPORT VTK_ABI_EXPORT
265 #define VTK_CHARTS_EXPORT VTK_ABI_IMPORT
269 #define VTK_COMMON_EXPORT
270 #define VTK_FILTERING_EXPORT
271 #define VTK_GENERIC_FILTERING_EXPORT
272 #define VTK_GEOVIS_EXPORT
273 #define VTK_GRAPHICS_EXPORT
274 #define VTK_GRAPHICS_JAVA_EXPORT
275 #define VTK_IMAGING_EXPORT
276 #define VTK_INFOVIS_EXPORT
277 #define VTK_IO_EXPORT
278 #define VTK_RENDERING_EXPORT
279 #define VTK_TEXT_ANALYSIS_EXPORT
280 #define VTK_VOLUMERENDERING_EXPORT
281 #define VTK_HYBRID_EXPORT
282 #define VTK_WIDGETS_EXPORT
283 #define VTK_PARALLEL_EXPORT
284 #define VTK_VIEWS_EXPORT
285 #define VTK_CHARTS_EXPORT
290 #define VTK_TK_EXPORT VTK_ABI_EXPORT