VTK
/Users/kitware/Dashboards/MyTests/VTK_BLD_Release_docs/Utilities/Doxygen/dox/Volumes/BIGMAC1/Dashboards/MyTests/VTK_BLD_Release_docs/Common/Core/vtkConfigure.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkConfigure.h.in
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 =========================================================================*/
00015 #ifndef vtkConfigure_h
00016 #define vtkConfigure_h
00017 
00018 /* This header is configured by VTK's build process.  */
00019 
00020 /*--------------------------------------------------------------------------*/
00021 /* Platform Features                                                        */
00022 
00023 /* Byte order.  */
00024 /* All compilers that support Mac OS X define either __BIG_ENDIAN__ or
00025    __LITTLE_ENDIAN__ to match the endianness of the architecture being
00026    compiled for. This is not necessarily the same as the architecture of the
00027    machine doing the building. In order to support Universal Binaries on
00028    Mac OS X, we prefer those defines to decide the endianness.
00029    On other platforms we use the result of the TRY_RUN. */
00030 #if !defined(__APPLE__)
00031 /* #undef VTK_WORDS_BIGENDIAN */
00032 #elif defined(__BIG_ENDIAN__)
00033 # define VTK_WORDS_BIGENDIAN
00034 #endif
00035 
00036 /* Threading system.  */
00037 #define VTK_USE_PTHREADS
00038 /* #undef VTK_USE_SPROC */
00039 /* #undef VTK_HP_PTHREADS */
00040 /* #undef VTK_USE_WIN32_THREADS */
00041 # define VTK_MAX_THREADS 64
00042 
00043 /* Atomic operations */
00044 #define VTK_HAVE_SYNC_BUILTINS
00045 #if defined(WIN32)
00046 /* #undef VTK_HAS_INTERLOCKEDADD */
00047 #endif
00048 
00049 /* Size of fundamental data types.  */
00050 /* Mac OS X uses two data models, ILP32 (in which integers, long integers,
00051    and pointers are 32-bit quantities) and LP64 (in which integers are 32-bit
00052    quantities and long integers and pointers are 64-bit quantities). In order
00053    to support Universal Binaries on Mac OS X, we rely on this knowledge
00054    instead of testing the sizes of the building machine.
00055    On other platforms we use the result of the TRY_RUN. */
00056 #if !defined(__APPLE__)
00057 # define VTK_SIZEOF_CHAR   1
00058 # define VTK_SIZEOF_SHORT  2
00059 # define VTK_SIZEOF_INT    4
00060 # define VTK_SIZEOF_LONG   8
00061 # define VTK_SIZEOF_FLOAT  4
00062 # define VTK_SIZEOF_DOUBLE 8
00063 # define VTK_SIZEOF_VOID_P 8
00064 #else
00065 # define VTK_SIZEOF_CHAR   1
00066 # define VTK_SIZEOF_SHORT  2
00067 # define VTK_SIZEOF_INT    4
00068 # if defined(__LP64__) && __LP64__
00069 #  define VTK_SIZEOF_LONG  8
00070 #  define VTK_SIZEOF_VOID_P 8
00071 # else
00072 #  define VTK_SIZEOF_LONG  4
00073 #  define VTK_SIZEOF_VOID_P 4
00074 # endif
00075 # define VTK_SIZEOF_FLOAT  4
00076 # define VTK_SIZEOF_DOUBLE 8
00077 #endif
00078 
00079 /* Define size of long long and/or __int64 bit integer type only if the type
00080    exists.  */
00081 #if !defined(__APPLE__)
00082  #define VTK_SIZEOF_LONG_LONG 8
00083 #else
00084  #define VTK_SIZEOF_LONG_LONG 8
00085 #endif
00086 /* #undef VTK_SIZEOF___INT64 */
00087 
00088 /* Whether types "long long" and "__int64" are enabled.  If a type is
00089    enabled then it is a unique fundamental type.  */
00090 #define VTK_TYPE_USE_LONG_LONG
00091 /* #undef VTK_TYPE_USE___INT64 */
00092 
00093 /* Some properties of the available types.  */
00094 /* #undef VTK_TYPE_SAME_LONG_AND___INT64 */
00095 /* #undef VTK_TYPE_SAME_LONG_LONG_AND___INT64 */
00096 /* #undef VTK_TYPE_CONVERT_UI64_TO_DOUBLE */
00097 
00098 /* Whether type "char" is signed (it may be signed or unsigned).  */
00099 #define VTK_TYPE_CHAR_IS_SIGNED 1
00100 
00101 /* Compiler features.  */
00102 /* #undef VTK_NO_EXPLICIT_TEMPLATE_INSTANTIATION */
00103 /* #undef VTK_NO_FULL_TEMPLATE_SPECIALIZATION */
00104 /* #undef VTK_NO_ANSI_STRING_STREAM */
00105 #define VTK_ISTREAM_SUPPORTS_LONG_LONG
00106 #define VTK_OSTREAM_SUPPORTS_LONG_LONG
00107 #define VTK_STREAM_EOF_SEVERITY 0
00108 #define VTK_HAVE_GETSOCKNAME_WITH_SOCKLEN_T
00109 #define VTK_HAVE_SO_REUSEADDR
00110 
00111 /* Whether we require large files support.  */
00112 #define VTK_REQUIRE_LARGE_FILE_SUPPORT
00113 
00114 /* Whether reverse const iterator's have comparison operators. */
00115 #define VTK_CONST_REVERSE_ITERATOR_COMPARISON
00116 
00117 /*--------------------------------------------------------------------------*/
00118 /* VTK Platform Configuration                                               */
00119 
00120 /* Whether the target platform supports shared libraries.  */
00121 /* #undef VTK_TARGET_SUPPORTS_SHARED_LIBS */
00122 
00123 /* Whether we are building shared libraries.  */
00124 #define VTK_BUILD_SHARED_LIBS
00125 
00126 /* Whether vtkIdType is a 64-bit integer type (or a 32-bit integer type).  */
00127 #define VTK_USE_64BIT_IDS
00128 
00129 #include "vtkVersionMacros.h" // removed by VTK_LEGACY_REMOVE
00130 
00131 /* C++ compiler used.  */
00132 #define VTK_CXX_COMPILER "/usr/bin/c++"
00133 
00134 /* Compatibility settings.  */
00135 /* #undef VTK_LEGACY_REMOVE */
00136 /* #undef VTK_LEGACY_SILENT */
00137 
00138 /* Debug leaks support.  */
00139 #define VTK_DEBUG_LEAKS
00140 
00141 /* Should all New methods use the object factory override. */
00142 /* #undef VTK_ALL_NEW_OBJECT_FACTORY */
00143 
00144 /*--------------------------------------------------------------------------*/
00145 /* Setup VTK based on platform features and configuration.                  */
00146 
00147 /* We now always use standard streams.  */
00148 #ifndef VTK_LEGACY_REMOVE
00149 # define VTK_USE_ANSI_STDLIB
00150 #endif
00151 
00152 /* Setup vtkstd, a portable namespace for std.  */
00153 #ifndef VTK_LEGACY_REMOVE
00154 # define vtkstd std
00155 #endif
00156 
00157 /* Define a "vtkstd_bool" for backwards compatibility.  Only use bool
00158    if this file is included by a c++ file. */
00159 #ifndef VTK_LEGACY_REMOVE
00160 # if defined(__cplusplus)
00161   typedef bool vtkstd_bool;
00162 # else
00163   typedef int vtkstd_bool;
00164 # endif
00165 #endif
00166 
00167 /* Define a macro to help define template specializations.  Skip if
00168    compiling a windows resource file because the resource compiler
00169    warns about truncating the long symbol.  */
00170 #if !defined(RC_INVOKED)
00171 # if defined(VTK_NO_FULL_TEMPLATE_SPECIALIZATION)
00172 #  define VTK_TEMPLATE_SPECIALIZE
00173 # else
00174 #  define VTK_TEMPLATE_SPECIALIZE template <>
00175 # endif
00176 #endif
00177 
00178 /* Provide missing streaming operators.  */
00179 #if defined(VTK_SIZEOF_LONG_LONG)
00180 # if !defined(VTK_OSTREAM_SUPPORTS_LONG_LONG)
00181 #  define VTK_IOSTREAM_NEED_OPERATORS_LL
00182 # elif !defined(VTK_ISTREAM_SUPPORTS_LONG_LONG)
00183 #  define VTK_IOSTREAM_NEED_OPERATORS_LL
00184 # endif
00185 # if defined(VTK_IOSTREAM_NEED_OPERATORS_LL)
00186    typedef long long vtkIOStreamSLL;
00187    typedef unsigned long long vtkIOStreamULL;
00188 # endif
00189 #elif defined(VTK_SIZEOF___INT64)
00190 # if defined(_MSC_VER) && (_MSC_VER < 1300)
00191 #  define VTK_IOSTREAM_NEED_OPERATORS_LL
00192    typedef __int64 vtkIOStreamSLL;
00193    typedef unsigned __int64 vtkIOStreamULL;
00194 # endif
00195 #endif
00196 
00197 #endif