CppAD: A C++ Algorithmic Differentiation Package
20130102
|
00001 /* $Id$ */ 00002 # ifndef CPPAD_CONFIGURE_INCLUDED 00003 # define CPPAD_CONFIGURE_INCLUDED 00004 00005 /* -------------------------------------------------------------------------- 00006 CppAD: C++ Algorithmic Differentiation: Copyright (C) 2003-12 Bradley M. Bell 00007 00008 CppAD is distributed under multiple licenses. This distribution is under 00009 the terms of the 00010 Eclipse Public License Version 1.0. 00011 00012 A copy of this license is included in the COPYING file of this distribution. 00013 Please visit http://www.coin-or.org/CppAD/ for information on other licenses. 00014 -------------------------------------------------------------------------- */ 00015 00016 /* 00017 $begin configure$$ 00018 $spell 00019 CppAD 00020 $$ 00021 00022 $section Preprocessor Definitions Used by CppAD$$ 00023 $index configure, symbol$$ 00024 $index symbol, configure$$ 00025 00026 $head Preprocessor Symbols$$ 00027 $index preprocessor, symbol$$ 00028 $index symbol, processor$$ 00029 All of the preprocessor symbols used by CppAD begin with 00030 $code CPPAD_$$ 00031 (there are some deprecated symbols that begin with $code CppAD$$). 00032 00033 $end 00034 */ 00035 00036 /*! 00037 \defgroup configure_hpp configure.hpp 00038 \{ 00039 \file configure.hpp 00040 Replacement for config.h so that all preprocessor symbols begin with CPPAD_ 00041 */ 00042 00043 /*! 00044 \def CPPAD_PACKAGE_STRING 00045 cppad-yyyymmdd as a C string where yyyy is year, mm is month, and dd is day. 00046 */ 00047 # define CPPAD_PACKAGE_STRING "cppad-20130102" 00048 00049 /*! 00050 def CPPAD_INTERNAL_SPARSE_SET 00051 is the internal representation used for sparse vectors of std::set<size_t> 00052 either sparse_set or sparse_list). 00053 */ 00054 # define CPPAD_INTERNAL_SPARSE_SET sparse_list 00055 00056 /*! 00057 \def CPPAD_BOOSTVECTOR 00058 If this symbol is one, and _MSC_VER is not defined, 00059 we are using boost vector for CPPAD_TESTVECTOR. 00060 It this symbol is zero, 00061 we are not using boost vector for CPPAD_TESTVECTOR. 00062 */ 00063 # define CPPAD_BOOSTVECTOR 0 00064 00065 /*! 00066 \def CPPAD_CPPADVECTOR 00067 If this symbol is one, 00068 we are using CppAD vector for CPPAD_TESTVECTOR. 00069 It this symbol is zero, 00070 we are not using CppAD vector for CPPAD_TESTVECTOR. 00071 */ 00072 # define CPPAD_CPPADVECTOR 0 00073 00074 /*! 00075 \def CPPAD_STDVECTOR 00076 If this symbol is one, 00077 we are using standard vector for CPPAD_TESTVECTOR. 00078 It this symbol is zero, 00079 we are not using standard vector for CPPAD_TESTVECTOR. 00080 */ 00081 # define CPPAD_STDVECTOR 1 00082 00083 /*! 00084 \def CPPAD_EIGENVECTOR 00085 If this symbol is one, 00086 we are using Eigen vector for CPPAD_TESTVECTOR. 00087 If this symbol is zero, 00088 we are not using Eigen vector for CPPAD_TESTVECTOR. 00089 */ 00090 # define CPPAD_EIGENVECTOR 0 00091 00092 /*! 00093 \def CPPAD_GETTIMEOFDAY 00094 If this symbol is one, and _MSC_VER is not defined, 00095 this system supports the gettimeofday funcgtion. 00096 Otherwise, this smybol should be zero. 00097 */ 00098 # define CPPAD_GETTIMEOFDAY 1 00099 00100 /*! 00101 \def CPPAD_SIZE_T_SAME_UNSIGNED_INT 00102 If this symbol is one, the type size_t is the same as the type unsigned int, 00103 otherwise this symbol is zero. 00104 */ 00105 # define CPPAD_SIZE_T_SAME_UNSIGNED_INT 1 00106 00107 /*! 00108 \def CPPAD_TAPE_ADDR_TYPE 00109 Is the type used to store address on the tape. If not size_t, then 00110 <code>sizeof(CPPAD_TAPE_ADDR_TYPE) <= sizeof( size_t )</code> 00111 to conserve memory. 00112 This type must support \c std::numeric_limits, 00113 the \c <= operator, 00114 and conversion to \c size_t. 00115 Make sure that the type chosen returns true for is_pod<CPPAD_TAPE_ADDR_TYPE> 00116 in pod_vector.hpp. 00117 This type is later defined as \c addr_t in the CppAD namespace. 00118 */ 00119 # define CPPAD_TAPE_ADDR_TYPE unsigned int 00120 00121 /*! 00122 \def CPPAD_TAPE_ID_TYPE 00123 Is the type used to store tape identifiers. If not size_t, then 00124 <code>sizeof(CPPAD_TAPE_ID_TYPE) <= sizeof( size_t )</code> 00125 to conserve memory. 00126 This type must support \c std::numeric_limits, 00127 the \c <= operator, 00128 and conversion to \c size_t. 00129 Make sure that the type chosen returns true for is_pod<CPPAD_TAPE_ID_TYPE> 00130 in pod_vector.hpp. 00131 This type is later defined as \c tape_id_t in the CppAD namespace. 00132 */ 00133 # define CPPAD_TAPE_ID_TYPE unsigned int 00134 00135 /*! 00136 \def CPPAD_MAX_NUM_THREADS 00137 Specifies the maximum number of threads that CppAD can support 00138 (must be greater than or equal four). 00139 00140 The user may define CPPAD_MAX_NUM_THREADS before including any of the CppAD 00141 header files. If it is not yet defined, 00142 */ 00143 # ifndef CPPAD_MAX_NUM_THREADS 00144 # define CPPAD_MAX_NUM_THREADS 48 00145 # endif 00146 00147 /*! \} */ 00148 # endif