00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00022 #ifndef __vtkWIN32Header_h
00023 #define __vtkWIN32Header_h
00024
00025 #ifndef __VTK_SYSTEM_INCLUDES__INSIDE
00026 Do_not_include_vtkWin32Header_directly__vtkSystemIncludes_includes_it;
00027 #endif
00028
00029 #include "vtkConfigure.h"
00030 #include "vtkABI.h"
00031
00032
00033
00034
00035
00036 #ifdef VTK_REQUIRE_LARGE_FILE_SUPPORT
00037 # ifndef _LARGEFILE_SOURCE
00038 # define _LARGEFILE_SOURCE
00039 # endif
00040 # ifndef _LARGE_FILES
00041 # define _LARGE_FILES
00042 # endif
00043 # ifndef _FILE_OFFSET_BITS
00044 # define _FILE_OFFSET_BITS 64
00045 # endif
00046 #endif
00047
00048
00049
00050 #if defined(_WIN32) || defined(WIN32) || defined(__CYGWIN__)
00051
00052
00053 #ifndef STRICT
00054 #define STRICT
00055 #endif
00056
00057 #ifdef VTK_USE_ANSI_STDLIB
00058 #ifndef NOMINMAX
00059 #define NOMINMAX
00060 #endif
00061 #endif
00062
00063 #endif
00064
00065
00066 #if defined(VTK_IN_VTK)
00067 # undef VTK_INCLUDE_WINDOWS_H
00068 #endif
00069
00070 #if defined(_WIN32)
00071
00072 # if defined(VTK_INCLUDE_WINDOWS_H)
00073 # include <windows.h>
00074
00075 typedef DWORD vtkWindowsDWORD;
00076 typedef PVOID vtkWindowsPVOID;
00077 typedef LPVOID vtkWindowsLPVOID;
00078 typedef HANDLE vtkWindowsHANDLE;
00079 typedef LPTHREAD_START_ROUTINE vtkWindowsLPTHREAD_START_ROUTINE;
00080 # else
00081
00082 typedef unsigned long vtkWindowsDWORD;
00083 typedef void* vtkWindowsPVOID;
00084 typedef vtkWindowsPVOID vtkWindowsLPVOID;
00085 typedef vtkWindowsPVOID vtkWindowsHANDLE;
00086 typedef vtkWindowsDWORD (__stdcall *vtkWindowsLPTHREAD_START_ROUTINE)(vtkWindowsLPVOID);
00087 # endif
00088
00089
00090 # define VTK_WORKAROUND_WINDOWS_MANGLE
00091
00092 #if ( _MSC_VER >= 1300 ) // Visual studio .NET
00093 #pragma warning ( disable : 4311 )
00094 #pragma warning ( disable : 4312 )
00095 # define vtkGetWindowLong GetWindowLongPtr
00096 # define vtkSetWindowLong SetWindowLongPtr
00097 # define vtkLONG LONG_PTR
00098 # define vtkGWL_WNDPROC GWLP_WNDPROC
00099 # define vtkGWL_HINSTANCE GWLP_HINSTANCE
00100 # define vtkGWL_USERDATA GWLP_USERDATA
00101 #else // older or non-Visual studio
00102 # define vtkGetWindowLong GetWindowLong
00103 # define vtkSetWindowLong SetWindowLong
00104 # define vtkLONG LONG
00105 # define vtkGWL_WNDPROC GWL_WNDPROC
00106 # define vtkGWL_HINSTANCE GWL_HINSTANCE
00107 # define vtkGWL_USERDATA GWL_USERDATA
00108 #endif //
00109
00110 #endif
00111
00112 #if defined(_MSC_VER)
00113
00114 # pragma warning ( default : 4263 )
00115
00116 # if !defined(VTK_DISPLAY_WIN32_WARNINGS)
00117 # pragma warning ( disable : 4003 )
00118 # pragma warning ( disable : 4097 )
00119 # pragma warning ( disable : 4127 )
00120 # pragma warning ( disable : 4244 )
00121 # pragma warning ( disable : 4251 )
00122 # pragma warning ( disable : 4305 )
00123 # pragma warning ( disable : 4309 )
00124 # pragma warning ( disable : 4514 )
00125 # pragma warning ( disable : 4706 )
00126 # pragma warning ( disable : 4710 )
00127 # pragma warning ( disable : 4786 )
00128 # endif
00129 #endif
00130
00131
00132
00133
00134
00135 #if defined(_MSC_VER) && (_MSC_VER < 1300) && defined(NDEBUG)
00136 # pragma warning ( disable : 4701 )
00137 # pragma warning ( disable : 4702 )
00138 #endif
00139
00140 #if defined(__BORLANDC__)
00141
00142 # if !defined(VTK_DISPLAY_WIN32_WARNINGS)
00143 # pragma warn -8004
00144 # pragma warn -8008
00145 # pragma warn -8026
00146 # pragma warn -8027
00147 # pragma warn -8060
00148 # pragma warn -8066
00149 # pragma warn -8072
00150 # endif
00151 #endif
00152
00153
00154 #if defined(VTK_BUILD_SHARED_LIBS)
00155
00156 #define VTK_EXPORT VTK_ABI_EXPORT
00157
00158 #if defined(vtkCommon_EXPORTS)
00159 #define VTK_COMMON_EXPORT VTK_ABI_EXPORT
00160 #else
00161 #define VTK_COMMON_EXPORT VTK_ABI_IMPORT
00162 #endif
00163
00164 #if defined(vtkFiltering_EXPORTS)
00165 #define VTK_FILTERING_EXPORT VTK_ABI_EXPORT
00166 #else
00167 #define VTK_FILTERING_EXPORT VTK_ABI_IMPORT
00168 #endif
00169
00170 #if defined(vtkImaging_EXPORTS)
00171 #define VTK_IMAGING_EXPORT VTK_ABI_EXPORT
00172 #else
00173 #define VTK_IMAGING_EXPORT VTK_ABI_IMPORT
00174 #endif
00175
00176 #if defined(vtkGenericFiltering_EXPORTS)
00177 #define VTK_GENERIC_FILTERING_EXPORT VTK_ABI_EXPORT
00178 #else
00179 #define VTK_GENERIC_FILTERING_EXPORT VTK_ABI_IMPORT
00180 #endif
00181
00182 #if defined(vtkGeovis_EXPORTS)
00183 #define VTK_GEOVIS_EXPORT VTK_ABI_EXPORT
00184 #else
00185 #define VTK_GEOVIS_EXPORT VTK_ABI_IMPORT
00186 #endif
00187
00188 #if defined(vtkGraphics_EXPORTS)
00189 #define VTK_GRAPHICS_EXPORT VTK_ABI_EXPORT
00190 #else
00191 #define VTK_GRAPHICS_EXPORT VTK_ABI_IMPORT
00192 #endif
00193
00194 #if defined(vtkGraphicsJava_EXPORTS)
00195 #define VTK_GRAPHICS_JAVA_EXPORT VTK_ABI_EXPORT
00196 #else
00197 #define VTK_GRAPHICS_JAVA_EXPORT VTK_ABI_IMPORT
00198 #endif
00199
00200 #if defined(vtkInfovis_EXPORTS)
00201 #define VTK_INFOVIS_EXPORT VTK_ABI_EXPORT
00202 #else
00203 #define VTK_INFOVIS_EXPORT VTK_ABI_IMPORT
00204 #endif
00205
00206 #if defined(vtkIO_EXPORTS)
00207 #define VTK_IO_EXPORT VTK_ABI_EXPORT
00208 #else
00209 #define VTK_IO_EXPORT VTK_ABI_IMPORT
00210 #endif
00211
00212 #if defined(vtkRendering_EXPORTS)
00213 #define VTK_RENDERING_EXPORT VTK_ABI_EXPORT
00214 #else
00215 #define VTK_RENDERING_EXPORT VTK_ABI_IMPORT
00216 #endif
00217
00218 #if defined(vtkTextAnalysis_EXPORTS)
00219 #define VTK_TEXT_ANALYSIS_EXPORT VTK_ABI_EXPORT
00220 #else
00221 #define VTK_TEXT_ANALYSIS_EXPORT VTK_ABI_IMPORT
00222 #endif
00223
00224 #if defined(vtkVolumeRendering_EXPORTS)
00225 #define VTK_VOLUMERENDERING_EXPORT VTK_ABI_EXPORT
00226 #else
00227 #define VTK_VOLUMERENDERING_EXPORT VTK_ABI_IMPORT
00228 #endif
00229
00230 #if defined(vtkHybrid_EXPORTS)
00231 #define VTK_HYBRID_EXPORT VTK_ABI_EXPORT
00232 #else
00233 #define VTK_HYBRID_EXPORT VTK_ABI_IMPORT
00234 #endif
00235
00236 #if defined(vtkWidgets_EXPORTS)
00237 #define VTK_WIDGETS_EXPORT VTK_ABI_EXPORT
00238 #else
00239 #define VTK_WIDGETS_EXPORT VTK_ABI_IMPORT
00240 #endif
00241
00242 #if defined(vtkParallel_EXPORTS)
00243 #define VTK_PARALLEL_EXPORT VTK_ABI_EXPORT
00244 #else
00245 #define VTK_PARALLEL_EXPORT VTK_ABI_IMPORT
00246 #endif
00247
00248 #if defined(vtkViews_EXPORTS)
00249 #define VTK_VIEWS_EXPORT VTK_ABI_EXPORT
00250 #else
00251 #define VTK_VIEWS_EXPORT VTK_ABI_IMPORT
00252 #endif
00253
00254 #if defined(vtkCharts_EXPORTS)
00255 #define VTK_CHARTS_EXPORT VTK_ABI_EXPORT
00256 #else
00257 #define VTK_CHARTS_EXPORT VTK_ABI_IMPORT
00258 #endif
00259
00260 #else
00261 #define VTK_COMMON_EXPORT
00262 #define VTK_FILTERING_EXPORT
00263 #define VTK_GENERIC_FILTERING_EXPORT
00264 #define VTK_GEOVIS_EXPORT
00265 #define VTK_GRAPHICS_EXPORT
00266 #define VTK_GRAPHICS_JAVA_EXPORT
00267 #define VTK_IMAGING_EXPORT
00268 #define VTK_INFOVIS_EXPORT
00269 #define VTK_IO_EXPORT
00270 #define VTK_RENDERING_EXPORT
00271 #define VTK_TEXT_ANALYSIS_EXPORT
00272 #define VTK_VOLUMERENDERING_EXPORT
00273 #define VTK_HYBRID_EXPORT
00274 #define VTK_WIDGETS_EXPORT
00275 #define VTK_PARALLEL_EXPORT
00276 #define VTK_VIEWS_EXPORT
00277 #define VTK_CHARTS_EXPORT
00278 #define VTK_EXPORT
00279 #endif
00280
00281
00282 #define VTK_TK_EXPORT VTK_ABI_EXPORT
00283
00284 #endif