VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkSystemIncludes.h 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 =========================================================================*/ 00027 #ifndef __vtkSystemIncludes_h 00028 #define __vtkSystemIncludes_h 00029 00030 /* first include the local configuration for this machine */ 00031 #define __VTK_SYSTEM_INCLUDES__INSIDE 00032 #include "vtkWin32Header.h" 00033 #undef __VTK_SYSTEM_INCLUDES__INSIDE 00034 00035 // The language wrapper files do not need the real streams. They 00036 // define VTK_STREAMS_FWD_ONLY so that the streams are only 00037 // forward-declared. This significantly improves compile time on some 00038 // platforms. 00039 #if defined(VTK_STREAMS_FWD_ONLY) 00040 # include "vtkIOStreamFwd.h" // Forward-declare the C++ streams. 00041 #else 00042 # include "vtkIOStream.h" // Include the real C++ streams. 00043 #endif 00044 00045 // Setup the basic types to be used by VTK. 00046 #include "vtkType.h" 00047 00048 // this should be removed at some point 00049 #define VTK_USE_EXECUTIVES 00050 00051 #define __VTK_SYSTEM_INCLUDES__INSIDE 00052 #include "vtkOStreamWrapper.h" // Include the ostream wrapper. 00053 #include "vtkOStrStreamWrapper.h" // Include the ostrstream wrapper. 00054 #undef __VTK_SYSTEM_INCLUDES__INSIDE 00055 00056 // Include generic stuff. 00057 #include <stdio.h> 00058 #include <stdlib.h> 00059 #include <string.h> 00060 00061 // Borland C++ defines several of the stdlib.h and string.h symbols in 00062 // sub-headers search.h and mem.h. These sub-headers have using 00063 // declarations to pull functions from the std namespace to the global 00064 // namespace, but they are defined only if the header was not included 00065 // through the C++-style cstdlib or cstring header. These outer 00066 // headers are included by the streams library in C++-style and 00067 // include blockers are put in place that prevent including the 00068 // C-style versions from ever including the sub-headers. Therefore we 00069 // have to include the sub-headers here to get the using declarations. 00070 #if defined(__BORLANDC__) 00071 # include <mem.h> /* mem... functions from string.h */ 00072 # include <search.h> /* search functions from stdlib.h */ 00073 #endif 00074 00075 // These types define error codes for vtk functions 00076 #define VTK_OK 1 00077 #define VTK_ERROR 2 00078 00079 // These types define different text properties 00080 #define VTK_ARIAL 0 00081 #define VTK_COURIER 1 00082 #define VTK_TIMES 2 00083 #define VTK_UNKNOWN_FONT 3 00084 00085 #define VTK_TEXT_LEFT 0 00086 #define VTK_TEXT_CENTERED 1 00087 #define VTK_TEXT_RIGHT 2 00088 00089 #define VTK_TEXT_BOTTOM 0 00090 #define VTK_TEXT_TOP 2 00091 00092 #define VTK_TEXT_GLOBAL_ANTIALIASING_SOME 0 00093 #define VTK_TEXT_GLOBAL_ANTIALIASING_NONE 1 00094 #define VTK_TEXT_GLOBAL_ANTIALIASING_ALL 2 00095 00096 #define VTK_LUMINANCE 1 00097 #define VTK_LUMINANCE_ALPHA 2 00098 #define VTK_RGB 3 00099 #define VTK_RGBA 4 00100 00101 #define VTK_COLOR_MODE_DEFAULT 0 00102 #define VTK_COLOR_MODE_MAP_SCALARS 1 00103 00104 // Constants for InterpolationType 00105 #define VTK_NEAREST_INTERPOLATION 0 00106 #define VTK_LINEAR_INTERPOLATION 1 00107 #define VTK_CUBIC_INTERPOLATION 2 00108 00109 // Constants for SlabType 00110 #define VTK_IMAGE_SLAB_MIN 0 00111 #define VTK_IMAGE_SLAB_MAX 1 00112 #define VTK_IMAGE_SLAB_MEAN 2 00113 #define VTK_IMAGE_SLAB_SUM 3 00114 00115 // For volume rendering 00116 #define VTK_MAX_VRCOMP 4 00117 00118 // If VTK_USE_PTHREADS is defined, then the multithreaded 00119 // function is of type void *, and returns NULL 00120 // Otherwise the type is void which is correct for WIN32 00121 // and SPROC 00122 #ifdef VTK_USE_PTHREADS 00123 #define VTK_THREAD_RETURN_VALUE NULL 00124 #define VTK_THREAD_RETURN_TYPE void * 00125 #endif 00126 00127 #ifdef VTK_USE_WIN32_THREADS 00128 #define VTK_THREAD_RETURN_VALUE 0 00129 #define VTK_THREAD_RETURN_TYPE vtkWindowsDWORD __stdcall 00130 #endif 00131 00132 #if !defined(VTK_USE_PTHREADS) && !defined(VTK_USE_WIN32_THREADS) 00133 #define VTK_THREAD_RETURN_VALUE 00134 #define VTK_THREAD_RETURN_TYPE void 00135 #endif 00136 00137 // For encoding 00138 00139 #define VTK_ENCODING_NONE 0 // to specify that no encoding should occur 00140 #define VTK_ENCODING_US_ASCII 1 00141 #define VTK_ENCODING_UNICODE 2 00142 #define VTK_ENCODING_UTF_8 3 00143 #define VTK_ENCODING_ISO_8859_1 4 00144 #define VTK_ENCODING_ISO_8859_2 5 00145 #define VTK_ENCODING_ISO_8859_3 6 00146 #define VTK_ENCODING_ISO_8859_4 7 00147 #define VTK_ENCODING_ISO_8859_5 8 00148 #define VTK_ENCODING_ISO_8859_6 9 00149 #define VTK_ENCODING_ISO_8859_7 10 00150 #define VTK_ENCODING_ISO_8859_8 11 00151 #define VTK_ENCODING_ISO_8859_9 12 00152 #define VTK_ENCODING_ISO_8859_10 13 00153 #define VTK_ENCODING_ISO_8859_11 14 00154 #define VTK_ENCODING_ISO_8859_12 15 00155 #define VTK_ENCODING_ISO_8859_13 16 00156 #define VTK_ENCODING_ISO_8859_14 17 00157 #define VTK_ENCODING_ISO_8859_15 18 00158 #define VTK_ENCODING_ISO_8859_16 19 00159 #define VTK_ENCODING_UNKNOWN 20 // leave this one at the end 00160 00161 #endif