VTK
vtkSystemIncludes.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkSystemIncludes.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
23 #ifndef vtkSystemIncludes_h
24 #define vtkSystemIncludes_h
25 
26 /* first include the local configuration for this machine */
27 #define __VTK_SYSTEM_INCLUDES__INSIDE
28 #include "vtkWin32Header.h"
29 #undef __VTK_SYSTEM_INCLUDES__INSIDE
30 
31 // The language wrapper files do not need the real streams. They
32 // define VTK_STREAMS_FWD_ONLY so that the streams are only
33 // forward-declared. This significantly improves compile time on some
34 // platforms.
35 #if defined(VTK_STREAMS_FWD_ONLY)
36 # include "vtkIOStreamFwd.h" // Forward-declare the C++ streams.
37 #else
38 # include "vtkIOStream.h" // Include the real C++ streams.
39 #endif
40 
41 // Setup the basic types to be used by VTK.
42 #include "vtkType.h"
43 
44 // this should be removed at some point
45 #define VTK_USE_EXECUTIVES
46 
47 #define __VTK_SYSTEM_INCLUDES__INSIDE
48 #include "vtkOStreamWrapper.h" // Include the ostream wrapper.
49 #include "vtkOStrStreamWrapper.h" // Include the ostrstream wrapper.
50 #undef __VTK_SYSTEM_INCLUDES__INSIDE
51 
52 // Include generic stuff.
53 #include <stdio.h>
54 #include <stdlib.h>
55 #include <string.h>
56 
57 // Borland C++ defines several of the stdlib.h and string.h symbols in
58 // sub-headers search.h and mem.h. These sub-headers have using
59 // declarations to pull functions from the std namespace to the global
60 // namespace, but they are defined only if the header was not included
61 // through the C++-style cstdlib or cstring header. These outer
62 // headers are included by the streams library in C++-style and
63 // include blockers are put in place that prevent including the
64 // C-style versions from ever including the sub-headers. Therefore we
65 // have to include the sub-headers here to get the using declarations.
66 #if defined(__BORLANDC__)
67 # include <mem.h> /* mem... functions from string.h */
68 # include <search.h> /* search functions from stdlib.h */
69 #endif
70 
71 // These types define error codes for vtk functions
72 #define VTK_OK 1
73 #define VTK_ERROR 2
74 
75 // These types define different text properties
76 #define VTK_ARIAL 0
77 #define VTK_COURIER 1
78 #define VTK_TIMES 2
79 #define VTK_UNKNOWN_FONT 3
80 #define VTK_FONT_FILE 4
81 
82 #define VTK_TEXT_LEFT 0
83 #define VTK_TEXT_CENTERED 1
84 #define VTK_TEXT_RIGHT 2
85 
86 #define VTK_TEXT_BOTTOM 0
87 #define VTK_TEXT_TOP 2
88 
89 #define VTK_TEXT_GLOBAL_ANTIALIASING_SOME 0
90 #define VTK_TEXT_GLOBAL_ANTIALIASING_NONE 1
91 #define VTK_TEXT_GLOBAL_ANTIALIASING_ALL 2
92 
93 #define VTK_LUMINANCE 1
94 #define VTK_LUMINANCE_ALPHA 2
95 #define VTK_RGB 3
96 #define VTK_RGBA 4
97 
98 #define VTK_COLOR_MODE_DEFAULT 0
99 #define VTK_COLOR_MODE_MAP_SCALARS 1
100 #define VTK_COLOR_MODE_DIRECT_SCALARS 2
101 
102 // Constants for InterpolationType
103 #define VTK_NEAREST_INTERPOLATION 0
104 #define VTK_LINEAR_INTERPOLATION 1
105 #define VTK_CUBIC_INTERPOLATION 2
106 
107 // Constants for SlabType
108 #define VTK_IMAGE_SLAB_MIN 0
109 #define VTK_IMAGE_SLAB_MAX 1
110 #define VTK_IMAGE_SLAB_MEAN 2
111 #define VTK_IMAGE_SLAB_SUM 3
112 
113 // For volume rendering
114 #define VTK_MAX_VRCOMP 4
115 
116 // If VTK_USE_PTHREADS is defined, then the multithreaded
117 // function is of type void *, and returns NULL
118 // Otherwise the type is void which is correct for WIN32
119 // and SPROC
120 #ifdef VTK_USE_PTHREADS
121 #define VTK_THREAD_RETURN_VALUE NULL
122 #define VTK_THREAD_RETURN_TYPE void *
123 #endif
124 
125 #ifdef VTK_USE_WIN32_THREADS
126 #define VTK_THREAD_RETURN_VALUE 0
127 #define VTK_THREAD_RETURN_TYPE vtkWindowsDWORD __stdcall
128 #endif
129 
130 #if !defined(VTK_USE_PTHREADS) && !defined(VTK_USE_WIN32_THREADS)
131 #define VTK_THREAD_RETURN_VALUE
132 #define VTK_THREAD_RETURN_TYPE void
133 #endif
134 
135 // For encoding
136 
137 #define VTK_ENCODING_NONE 0 // to specify that no encoding should occur
138 #define VTK_ENCODING_US_ASCII 1
139 #define VTK_ENCODING_UNICODE 2
140 #define VTK_ENCODING_UTF_8 3
141 #define VTK_ENCODING_ISO_8859_1 4
142 #define VTK_ENCODING_ISO_8859_2 5
143 #define VTK_ENCODING_ISO_8859_3 6
144 #define VTK_ENCODING_ISO_8859_4 7
145 #define VTK_ENCODING_ISO_8859_5 8
146 #define VTK_ENCODING_ISO_8859_6 9
147 #define VTK_ENCODING_ISO_8859_7 10
148 #define VTK_ENCODING_ISO_8859_8 11
149 #define VTK_ENCODING_ISO_8859_9 12
150 #define VTK_ENCODING_ISO_8859_10 13
151 #define VTK_ENCODING_ISO_8859_11 14
152 #define VTK_ENCODING_ISO_8859_12 15
153 #define VTK_ENCODING_ISO_8859_13 16
154 #define VTK_ENCODING_ISO_8859_14 17
155 #define VTK_ENCODING_ISO_8859_15 18
156 #define VTK_ENCODING_ISO_8859_16 19
157 #define VTK_ENCODING_UNKNOWN 20 // leave this one at the end
158 
159 #endif
160 // VTK-HeaderTest-Exclude: vtkSystemIncludes.h