Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

Common/vtkWin32Header.h

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