Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

MSconfig.h

Go to the documentation of this file.
00001 // Use "#pragma once" instead of "ifndef MSCONFIG_H, define MSCONFIG_H,
00002 // #endif" if you know you are using a Microsoft compiler, which we are
00003 // if this file is being included. Using "pragma once" is much faster
00004 // and less error prone.
00005 #pragma once
00006 
00007 // _MSC_VER == 1300 is the first release of Microsoft Visual C++ .NET.
00008 // There are no known problems with this version of MSVC, so we skip all
00009 // of these "workarounds" if .NET is being used.
00010 
00011 #define VERSION "1.14.8.5"
00012 
00015 #define ENSURE_DEFECT 1
00016 
00017 #if _MSC_VER < 1300
00018 
00034 /* Turn off annoying warning. */
00035 
00036 # pragma warning(disable:4244)  // conversion from double to float
00037 # pragma warning(disable:4250)  // inherits via dominance
00038 # pragma warning(disable:4251)  // exporting from dll
00039 # pragma warning(disable:4273)  // incosistent dll linkage
00040 # pragma warning(disable:4275)  // non dll-interface class
00041 # pragma warning(disable:4786)  // '255' characters in the debug information
00042 
00043 
00046 #ifndef M_PI
00047 #define M_PI 3.14159265358979323846
00048 #endif
00049 
00050 #ifndef M_E
00051 #define M_E 2.7182818284590452354
00052 #endif
00053 
00058 #define BIND2ND_DEFECT 1
00059 
00066 #define CLONE_DEFECT 1
00067 
00071 #define ITERATOR_MEMBER_DEFECT 1
00072 
00074 #define MEMFUN_DEFECT 1
00075 
00078 #define MEMFUN1_DEFECT 1
00079 
00082 #define TRANSFORM_DEFECT 1
00083 
00084 namespace std {
00085 
00088 #ifdef max
00089 #undef max
00090 #endif
00091 template < class T >
00092 inline const T& max ( const T & a, const T & b )
00093 {
00094   // Break this into two lines to avoid an incorrect warning with
00095   // Cfront-based compilers.
00096   const T & retval = a < b ? b : a;
00097 
00098   return retval;
00099 }
00100 
00103 #ifdef min
00104 #undef min
00105 #endif
00106 template < class T >
00107 inline const T& min ( const T & a, const T & b)
00108 {
00109   // Break this into two lines to avoid an incorrect warning with
00110   // Cfront-based compilers.
00111   const T & retval = b < a ? b : a;
00112 
00113   return retval;
00114 }
00115 
00118 template < class T >
00119 inline const T & abs ( const T & a )
00120 {
00121     const T & retval = a < 0 ? -a : a;
00122 
00123     return retval;
00124 }
00125 
00126 } //end namespace std::
00127 
00128 #endif

Generated for HippoDraw-1.14.8.5 by doxygen 1.4.3