MOOS 0.2375
|
00001 //$$ include.h include files required by various versions of C++ 00002 00003 #ifndef INCLUDE_LIB 00004 #define INCLUDE_LIB 00005 00006 #define use_namespace // define name spaces 00007 00008 //#define SETUP_C_SUBSCRIPTS // allow element access via A[i][j] 00009 00010 // Activate just one of the following 3 statements 00011 00012 //#define SimulateExceptions // use simulated exceptions 00013 #define UseExceptions // use C++ exceptions 00014 //#define DisableExceptions // do not use exceptions 00015 00016 00017 #define TEMPS_DESTROYED_QUICKLY // for compilers that delete 00018 // temporaries too quickly 00019 00020 //#define TEMPS_DESTROYED_QUICKLY_R // the same thing but applied 00021 // to return from functions only 00022 00023 //#define DO_FREE_CHECK // check news and deletes balance 00024 00025 #define USING_DOUBLE // elements of type double 00026 //#define USING_FLOAT // elements of type float 00027 00028 // de-activate the following statement if your (very old) compiler 00029 // does not define bool 00030 00031 #define bool_LIB 0 00032 00033 //#define ios_format_flags ios::fmtflags // for Gnu 3 and Intel for Linux 00034 00035 00036 //#define _STANDARD_ // using standard library 00037 00038 //#define use_float_h // use float.h for precision data 00039 00040 00041 //#define HAS_INT64 // if unsigned _int64 is recognised 00042 // used by newran03 00043 00044 //*********************** end of options set by user ******************** 00045 00046 00047 // for Gnu C++ version 3 00048 #if defined __GNUG__ && __GNUG__ >= 3 00049 #define _STANDARD_ // use standard library 00050 #define ios_format_flags ios::fmtflags 00051 #endif 00052 00053 // for Intel C++ for Linux 00054 #if defined __ICC 00055 #define _STANDARD_ // use standard library 00056 #define ios_format_flags ios::fmtflags 00057 #endif 00058 00059 00060 #ifdef _STANDARD_ // using standard library 00061 #include <cstdlib> 00062 #ifdef _MSC_VER 00063 #include <limits> // for VC++6 & 7 00064 #endif 00065 #ifdef WANT_STREAM 00066 #include <iostream> 00067 #include <iomanip> 00068 #endif 00069 #ifdef WANT_MATH 00070 #include <cmath> 00071 #endif 00072 #ifdef WANT_STRING 00073 #include <cstring> 00074 #endif 00075 #ifdef WANT_TIME 00076 #include <ctime> 00077 #endif 00078 #ifdef WANT_FSTREAM 00079 #include <fstream> 00080 #endif 00081 using namespace std; 00082 #else 00083 00084 #define DEFAULT_HEADER // use AT&T style header 00085 // if no other compiler is recognised 00086 00087 #ifdef _MSC_VER // Microsoft 00088 #include <stdlib.h> 00089 00090 // reactivate these statements to run under MSC version 7.0 00091 // typedef int jmp_buf[9]; 00092 // extern "C" 00093 // { 00094 // int __cdecl setjmp(jmp_buf); 00095 // void __cdecl longjmp(jmp_buf, int); 00096 // } 00097 00098 #ifdef WANT_STREAM 00099 // #include <iostream.h> 00100 // #include <iomanip.h> 00101 #include <iostream> 00102 #include <iomanip> 00103 #endif 00104 #ifdef WANT_MATH 00105 #include <math.h> 00106 #include <float.h> 00107 #endif 00108 #ifdef WANT_STRING 00109 #include <string.h> 00110 #endif 00111 #ifdef WANT_TIME 00112 #include <time.h> 00113 #endif 00114 #ifdef WANT_FSTREAM 00115 #include <fstream.h> 00116 #endif 00117 #undef DEFAULT_HEADER 00118 #endif 00119 00120 #ifdef __ZTC__ // Zortech 00121 #include <stdlib.h> 00122 #ifdef WANT_STREAM 00123 #include <iostream.hpp> 00124 #include <iomanip.hpp> 00125 #define flush "" // not defined in iomanip? 00126 #endif 00127 #ifdef WANT_MATH 00128 #include <math.h> 00129 #include <float.h> 00130 #endif 00131 #ifdef WANT_STRING 00132 #include <string.h> 00133 #endif 00134 #ifdef WANT_TIME 00135 #include <time.h> 00136 #endif 00137 #ifdef WANT_FSTREAM 00138 #include <fstream.h> 00139 #endif 00140 #undef DEFAULT_HEADER 00141 #endif 00142 00143 #if defined __BCPLUSPLUS__ || defined __TURBOC__ // Borland or Turbo 00144 #include <stdlib.h> 00145 #ifdef WANT_STREAM 00146 #include <iostream.h> 00147 #include <iomanip.h> 00148 #endif 00149 #ifdef WANT_MATH 00150 #include <math.h> 00151 #include <float.h> // Borland has both float and values 00152 // but values.h returns +INF for 00153 // MAXDOUBLE in BC5 00154 #endif 00155 #ifdef WANT_STRING 00156 #include <string.h> 00157 #endif 00158 #ifdef WANT_TIME 00159 #include <time.h> 00160 #endif 00161 #ifdef WANT_FSTREAM 00162 #include <fstream.h> 00163 #endif 00164 #undef DEFAULT_HEADER 00165 #endif 00166 00167 #ifdef __GNUG__ // Gnu C++ 00168 #include <stdlib.h> 00169 #ifdef WANT_STREAM 00170 #include <iostream.h> 00171 #include <iomanip.h> 00172 #endif 00173 #ifdef WANT_MATH 00174 #include <math.h> 00175 #include <float.h> 00176 #endif 00177 #ifdef WANT_STRING 00178 #include <string.h> 00179 #endif 00180 #ifdef WANT_TIME 00181 #include <time.h> 00182 #endif 00183 #ifdef WANT_FSTREAM 00184 #include <fstream.h> 00185 #endif 00186 #undef DEFAULT_HEADER 00187 #endif 00188 00189 #ifdef __WATCOMC__ // Watcom C/C++ 00190 #include <stdlib.h> 00191 #ifdef WANT_STREAM 00192 #include <iostream.h> 00193 #include <iomanip.h> 00194 #endif 00195 #ifdef WANT_MATH 00196 #include <math.h> 00197 #include <float.h> 00198 #endif 00199 #ifdef WANT_STRING 00200 #include <string.h> 00201 #endif 00202 #ifdef WANT_TIME 00203 #include <time.h> 00204 #endif 00205 #ifdef WANT_FSTREAM 00206 #include <fstream.h> 00207 #endif 00208 #undef DEFAULT_HEADER 00209 #endif 00210 00211 00212 #ifdef macintosh // MPW C++ on the Mac 00213 #include <stdlib.h> 00214 #ifdef WANT_STREAM 00215 #include <iostream.h> 00216 #include <iomanip.h> 00217 #endif 00218 #ifdef WANT_MATH 00219 #include <float.h> 00220 #include <math.h> 00221 #endif 00222 #ifdef WANT_STRING 00223 #include <string.h> 00224 #endif 00225 #ifdef WANT_TIME 00226 #include <time.h> 00227 #endif 00228 #ifdef WANT_FSTREAM 00229 #include <fstream.h> 00230 #endif 00231 #undef DEFAULT_HEADER 00232 #endif 00233 00234 #ifdef use_float_h // use float.h for precision values 00235 #include <stdlib.h> 00236 #ifdef WANT_STREAM 00237 #include <iostream.h> 00238 #include <iomanip.h> 00239 #endif 00240 #ifdef WANT_MATH 00241 #include <float.h> 00242 #include <math.h> 00243 #endif 00244 #ifdef WANT_STRING 00245 #include <string.h> 00246 #endif 00247 #ifdef WANT_TIME 00248 #include <time.h> 00249 #endif 00250 #ifdef WANT_FSTREAM 00251 #include <fstream.h> 00252 #endif 00253 #undef DEFAULT_HEADER 00254 #endif 00255 00256 00257 #ifdef DEFAULT_HEADER // for example AT&T 00258 #define ATandT 00259 #include <stdlib.h> 00260 #ifdef WANT_STREAM 00261 #include <iostream.h> 00262 #include <iomanip.h> 00263 #endif 00264 #ifdef WANT_MATH 00265 #include <math.h> 00266 #define SystemV // use System V 00267 #include <values.h> 00268 #endif 00269 #ifdef WANT_STRING 00270 #include <string.h> 00271 #endif 00272 #ifdef WANT_TIME 00273 #include <time.h> 00274 #endif 00275 #ifdef WANT_FSTREAM 00276 #include <fstream.h> 00277 #endif 00278 #endif // DEFAULT_HEADER 00279 00280 #endif // _STANDARD_ 00281 00282 #ifdef use_namespace 00283 namespace RBD_COMMON { 00284 #endif 00285 00286 00287 #ifdef USING_FLOAT // set precision type to float 00288 typedef float Real; 00289 typedef double long_Real; 00290 #endif 00291 00292 #ifdef USING_DOUBLE // set precision type to double 00293 typedef double Real; 00294 typedef long double long_Real; 00295 #endif 00296 00297 00298 #ifdef use_namespace 00299 } 00300 #endif 00301 00302 00303 #ifdef use_namespace 00304 namespace RBD_COMMON {} 00305 namespace RBD_LIBRARIES // access all my libraries 00306 { 00307 using namespace RBD_COMMON; 00308 } 00309 #endif 00310 00311 00312 #endif