CppAD: A C++ Algorithmic Differentiation Package  20130102
configure.hpp
Go to the documentation of this file.
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
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines