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)
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 #if !defined(__WRAP__)
00091 # define VTK_WORKAROUND_WINDOWS_MANGLE
00092 #endif
00093
00094 #if ( _MSC_VER >= 1300 ) // Visual studio .NET
00095 #pragma warning ( disable : 4311 )
00096 #pragma warning ( disable : 4312 )
00097 # define vtkGetWindowLong GetWindowLongPtr
00098 # define vtkSetWindowLong SetWindowLongPtr
00099 # define vtkLONG LONG_PTR
00100 # define vtkGWL_WNDPROC GWLP_WNDPROC
00101 # define vtkGWL_HINSTANCE GWLP_HINSTANCE
00102 # define vtkGWL_USERDATA GWLP_USERDATA
00103 #else // older or non-Visual studio
00104 # define vtkGetWindowLong GetWindowLong
00105 # define vtkSetWindowLong SetWindowLong
00106 # define vtkLONG LONG
00107 # define vtkGWL_WNDPROC GWL_WNDPROC
00108 # define vtkGWL_HINSTANCE GWL_HINSTANCE
00109 # define vtkGWL_USERDATA GWL_USERDATA
00110 #endif //
00111
00112 #endif
00113
00114 #if defined(_MSC_VER)
00115
00116 # pragma warning ( default : 4263 )
00117
00118 # if !defined(VTK_DISPLAY_WIN32_WARNINGS)
00119 # pragma warning ( disable : 4003 )
00120 # pragma warning ( disable : 4097 )
00121 # pragma warning ( disable : 4127 )
00122 # pragma warning ( disable : 4244 )
00123 # pragma warning ( disable : 4251 )
00124 # pragma warning ( disable : 4305 )
00125 # pragma warning ( disable : 4309 )
00126 # pragma warning ( disable : 4514 )
00127 # pragma warning ( disable : 4706 )
00128 # pragma warning ( disable : 4710 )
00129 # pragma warning ( disable : 4786 )
00130 # endif
00131 #endif
00132
00133
00134
00135
00136
00137 #if defined(_MSC_VER) && (_MSC_VER < 1300) && defined(NDEBUG)
00138 # pragma warning ( disable : 4701 )
00139 # pragma warning ( disable : 4702 )
00140 #endif
00141
00142 #if defined(__BORLANDC__)
00143
00144 # if !defined(VTK_DISPLAY_WIN32_WARNINGS)
00145 # pragma warn -8004
00146 # pragma warn -8008
00147 # pragma warn -8026
00148 # pragma warn -8027
00149 # pragma warn -8060
00150 # pragma warn -8066
00151 # pragma warn -8072
00152 # endif
00153 #endif
00154
00155
00156 #if defined(VTK_BUILD_SHARED_LIBS)
00157
00158 #define VTK_EXPORT VTK_ABI_EXPORT
00159
00160 #if defined(vtkCommon_EXPORTS)
00161 #define VTK_COMMON_EXPORT VTK_ABI_EXPORT
00162 #else
00163 #define VTK_COMMON_EXPORT VTK_ABI_IMPORT
00164 #endif
00165
00166 #if defined(vtkFiltering_EXPORTS)
00167 #define VTK_FILTERING_EXPORT VTK_ABI_EXPORT
00168 #else
00169 #define VTK_FILTERING_EXPORT VTK_ABI_IMPORT
00170 #endif
00171
00172 #if defined(vtkImaging_EXPORTS)
00173 #define VTK_IMAGING_EXPORT VTK_ABI_EXPORT
00174 #else
00175 #define VTK_IMAGING_EXPORT VTK_ABI_IMPORT
00176 #endif
00177
00178 #if defined(vtkGenericFiltering_EXPORTS)
00179 #define VTK_GENERIC_FILTERING_EXPORT VTK_ABI_EXPORT
00180 #else
00181 #define VTK_GENERIC_FILTERING_EXPORT VTK_ABI_IMPORT
00182 #endif
00183
00184 #if defined(vtkGeovis_EXPORTS)
00185 #define VTK_GEOVIS_EXPORT VTK_ABI_EXPORT
00186 #else
00187 #define VTK_GEOVIS_EXPORT VTK_ABI_IMPORT
00188 #endif
00189
00190 #if defined(vtkGraphics_EXPORTS)
00191 #define VTK_GRAPHICS_EXPORT VTK_ABI_EXPORT
00192 #else
00193 #define VTK_GRAPHICS_EXPORT VTK_ABI_IMPORT
00194 #endif
00195
00196 #if defined(vtkGraphicsJava_EXPORTS)
00197 #define VTK_GRAPHICS_JAVA_EXPORT VTK_ABI_EXPORT
00198 #else
00199 #define VTK_GRAPHICS_JAVA_EXPORT VTK_ABI_IMPORT
00200 #endif
00201
00202 #if defined(vtkInfovis_EXPORTS)
00203 #define VTK_INFOVIS_EXPORT VTK_ABI_EXPORT
00204 #else
00205 #define VTK_INFOVIS_EXPORT VTK_ABI_IMPORT
00206 #endif
00207
00208 #if defined(vtkIO_EXPORTS)
00209 #define VTK_IO_EXPORT VTK_ABI_EXPORT
00210 #else
00211 #define VTK_IO_EXPORT VTK_ABI_IMPORT
00212 #endif
00213
00214 #if defined(vtkRendering_EXPORTS)
00215 #define VTK_RENDERING_EXPORT VTK_ABI_EXPORT
00216 #else
00217 #define VTK_RENDERING_EXPORT VTK_ABI_IMPORT
00218 #endif
00219
00220 #if defined(vtkTextAnalysis_EXPORTS)
00221 #define VTK_TEXT_ANALYSIS_EXPORT VTK_ABI_EXPORT
00222 #else
00223 #define VTK_TEXT_ANALYSIS_EXPORT VTK_ABI_IMPORT
00224 #endif
00225
00226 #if defined(vtkVolumeRendering_EXPORTS)
00227 #define VTK_VOLUMERENDERING_EXPORT VTK_ABI_EXPORT
00228 #else
00229 #define VTK_VOLUMERENDERING_EXPORT VTK_ABI_IMPORT
00230 #endif
00231
00232 #if defined(vtkHybrid_EXPORTS)
00233 #define VTK_HYBRID_EXPORT VTK_ABI_EXPORT
00234 #else
00235 #define VTK_HYBRID_EXPORT VTK_ABI_IMPORT
00236 #endif
00237
00238 #if defined(vtkWidgets_EXPORTS)
00239 #define VTK_WIDGETS_EXPORT VTK_ABI_EXPORT
00240 #else
00241 #define VTK_WIDGETS_EXPORT VTK_ABI_IMPORT
00242 #endif
00243
00244 #if defined(vtkParallel_EXPORTS)
00245 #define VTK_PARALLEL_EXPORT VTK_ABI_EXPORT
00246 #else
00247 #define VTK_PARALLEL_EXPORT VTK_ABI_IMPORT
00248 #endif
00249
00250 #if defined(vtkViews_EXPORTS)
00251 #define VTK_VIEWS_EXPORT VTK_ABI_EXPORT
00252 #else
00253 #define VTK_VIEWS_EXPORT VTK_ABI_IMPORT
00254 #endif
00255
00256 #if defined(vtkCharts_EXPORTS)
00257 #define VTK_CHARTS_EXPORT VTK_ABI_EXPORT
00258 #else
00259 #define VTK_CHARTS_EXPORT VTK_ABI_IMPORT
00260 #endif
00261
00262 #else
00263 #define VTK_COMMON_EXPORT
00264 #define VTK_FILTERING_EXPORT
00265 #define VTK_GENERIC_FILTERING_EXPORT
00266 #define VTK_GEOVIS_EXPORT
00267 #define VTK_GRAPHICS_EXPORT
00268 #define VTK_GRAPHICS_JAVA_EXPORT
00269 #define VTK_IMAGING_EXPORT
00270 #define VTK_INFOVIS_EXPORT
00271 #define VTK_IO_EXPORT
00272 #define VTK_RENDERING_EXPORT
00273 #define VTK_TEXT_ANALYSIS_EXPORT
00274 #define VTK_VOLUMERENDERING_EXPORT
00275 #define VTK_HYBRID_EXPORT
00276 #define VTK_WIDGETS_EXPORT
00277 #define VTK_PARALLEL_EXPORT
00278 #define VTK_VIEWS_EXPORT
00279 #define VTK_CHARTS_EXPORT
00280 #define VTK_EXPORT
00281 #endif
00282
00283
00284 #define VTK_TK_EXPORT VTK_ABI_EXPORT
00285
00286 #endif