Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

vtkWin32Header.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkWin32Header.h,v $
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00032 #ifndef __vtkWIN32Header_h
00033 #define __vtkWIN32Header_h
00034 
00035 #ifndef __VTK_SYSTEM_INCLUDES__INSIDE
00036 Do_not_include_vtkWin32Header_directly__vtkSystemIncludes_includes_it;
00037 #endif
00038 
00039 #include "vtkConfigure.h"
00040 
00041 //
00042 // Windows specific stuff------------------------------------------
00043 #if defined(_WIN32) || defined(WIN32) || defined(__CYGWIN__)
00044 
00045 // define strict header for windows
00046 #ifndef STRICT
00047 #define STRICT
00048 #endif
00049 
00050 #ifdef VTK_USE_ANSI_STDLIB
00051 #ifndef NOMINMAX
00052 #define NOMINMAX
00053 #endif
00054 #endif
00055 
00056 #include <windows.h>
00057 
00058 #ifdef _MSC_VER
00059 // Handle MSVC compiler warning messages, etc.
00060 #ifndef VTK_DISPLAY_WIN32_WARNINGS
00061 #pragma warning ( disable : 4127 )
00062 #pragma warning ( disable : 4244 )
00063 #pragma warning ( disable : 4251 )
00064 #pragma warning ( disable : 4305 )
00065 #pragma warning ( disable : 4309 )
00066 #pragma warning ( disable : 4710 )
00067 #pragma warning ( disable : 4706 )
00068 #pragma warning ( disable : 4786 )
00069 #pragma warning ( disable : 4097 )
00070 #endif //VTK_DISPLAY_WIN32_WARNINGS
00071 #endif
00072 
00073 #endif
00074 
00075 #if defined(WIN32) && defined(VTK_BUILD_SHARED_LIBS)
00076  #define VTK_EXPORT __declspec( dllexport )
00077 
00078  #if defined(vtkCommon_EXPORTS)
00079   #define VTK_COMMON_EXPORT __declspec( dllexport ) 
00080  #else
00081   #define VTK_COMMON_EXPORT __declspec( dllimport ) 
00082  #endif
00083 
00084  #if defined(vtkFiltering_EXPORTS)
00085   #define VTK_FILTERING_EXPORT __declspec( dllexport ) 
00086  #else
00087   #define VTK_FILTERING_EXPORT __declspec( dllimport ) 
00088  #endif
00089 
00090  #if defined(vtkImaging_EXPORTS)
00091   #define VTK_IMAGING_EXPORT __declspec( dllexport ) 
00092  #else
00093   #define VTK_IMAGING_EXPORT __declspec( dllimport ) 
00094  #endif
00095 
00096  #if defined(vtkGenericFiltering_EXPORTS)
00097   #define VTK_GENERIC_FILTERING_EXPORT __declspec( dllexport ) 
00098  #else
00099   #define VTK_GENERIC_FILTERING_EXPORT __declspec( dllimport ) 
00100  #endif
00101 
00102  #if defined(vtkGraphics_EXPORTS)
00103   #define VTK_GRAPHICS_EXPORT __declspec( dllexport ) 
00104  #else
00105   #define VTK_GRAPHICS_EXPORT __declspec( dllimport ) 
00106  #endif
00107 
00108  #if defined(vtkIO_EXPORTS)
00109   #define VTK_IO_EXPORT __declspec( dllexport ) 
00110  #else
00111   #define VTK_IO_EXPORT __declspec( dllimport ) 
00112  #endif
00113 
00114  #if defined(vtkRendering_EXPORTS)
00115   #define VTK_RENDERING_EXPORT __declspec( dllexport ) 
00116  #else
00117   #define VTK_RENDERING_EXPORT __declspec( dllimport ) 
00118  #endif
00119 
00120  #if defined(vtkHybrid_EXPORTS)
00121   #define VTK_HYBRID_EXPORT __declspec( dllexport ) 
00122  #else
00123   #define VTK_HYBRID_EXPORT __declspec( dllimport ) 
00124  #endif
00125 
00126  #if defined(vtkParallel_EXPORTS)
00127   #define VTK_PARALLEL_EXPORT __declspec( dllexport ) 
00128  #else
00129   #define VTK_PARALLEL_EXPORT __declspec( dllimport ) 
00130  #endif
00131 
00132  #if defined(vtkPatented_EXPORTS)
00133   #define VTK_PATENTED_EXPORT __declspec( dllexport ) 
00134  #else
00135   #define VTK_PATENTED_EXPORT __declspec( dllimport ) 
00136  #endif
00137 #else
00138  #define VTK_COMMON_EXPORT
00139  #define VTK_FILTERING_EXPORT
00140  #define VTK_GENERIC_FILTERING_EXPORT
00141  #define VTK_GRAPHICS_EXPORT
00142  #define VTK_IMAGING_EXPORT
00143  #define VTK_IO_EXPORT
00144  #define VTK_RENDERING_EXPORT
00145  #define VTK_HYBRID_EXPORT
00146  #define VTK_PARALLEL_EXPORT
00147  #define VTK_PATENTED_EXPORT
00148  #define VTK_EXPORT
00149 #endif
00150 
00151 // this is exclusively for the tcl Init functions
00152 #if defined(WIN32)
00153  #define VTK_TK_EXPORT __declspec( dllexport )
00154 #else
00155  #define VTK_TK_EXPORT
00156 #endif
00157 
00158 #endif