stdcpp/src/complex_impl.h
changeset 0 e4d67989cc36
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/stdcpp/src/complex_impl.h	Tue Feb 02 02:01:42 2010 +0200
@@ -0,0 +1,94 @@
+/*
+ * Copyright (c) 1999
+ * Silicon Graphics Computer Systems, Inc.
+ *
+ * Copyright (c) 1999 
+ * Boris Fomitchev
+ *
+ * This material is provided "as is", with absolutely no warranty expressed
+ * or implied. Any use is at your own risk.
+ *
+ * Permission to use or copy this software for any purpose is hereby granted 
+ * without fee, provided the above notices are retained on all copies.
+ * Permission to modify the code and to distribute modified code is granted,
+ * provided the above notices are retained, and a notice that the code was
+ * modified is included with the above copyright notice.
+ *
+ */ 
+
+# ifndef COMPLEX_IMPL_H
+#  define  COMPLEX_IMPL_H
+
+#include <complex>
+#include <cmath>
+#include <math.h>
+#include <stl/_cmath.h>
+
+# if (defined (__sgi) && !defined(__GNUC__)) /* || defined (__DECCXX) */
+
+# define _STLP_ABSF   _STLP_VENDOR_CSTD::fabsf
+# define _STLP_ATAN2F _STLP_VENDOR_CSTD::atan2f
+# define _STLP_SINF   _STLP_VENDOR_CSTD::sinf
+# define _STLP_COSF   _STLP_VENDOR_CSTD::cosf
+# define _STLP_SQRTF  _STLP_VENDOR_CSTD::sqrtf
+# define _STLP_EXPF   _STLP_VENDOR_CSTD::expf
+# define _STLP_LOG10F _STLP_VENDOR_CSTD::log10f
+# define _STLP_LOGF   _STLP_VENDOR_CSTD::logf
+# define _STLP_SINHF  _STLP_VENDOR_CSTD::sinhf
+# define _STLP_COSHF  _STLP_VENDOR_CSTD::coshf
+# define _STLP_HYPOTF _STLP_VENDOR_CSTD::hypotf
+
+
+# define _STLP_ABSL   _STLP_VENDOR_CSTD::fabsl
+# define _STLP_ATAN2L _STLP_VENDOR_CSTD::atan2l
+# define _STLP_SINL   _STLP_VENDOR_CSTD::sinl
+# define _STLP_COSL   _STLP_VENDOR_CSTD::cosl
+# define _STLP_SQRTL  _STLP_VENDOR_CSTD::sqrtl
+# define _STLP_EXPL   _STLP_VENDOR_CSTD::expl
+# define _STLP_LOG10L _STLP_VENDOR_CSTD::log10l
+# define _STLP_LOGL   _STLP_VENDOR_CSTD::logl
+# define _STLP_SINHL  _STLP_VENDOR_CSTD::sinhl
+# define _STLP_COSHL  _STLP_VENDOR_CSTD::coshl
+// # define _STLP_HYPOT  ::hypot
+# define _STLP_HYPOTL _STLP_VENDOR_CSTD::hypotl
+
+#else
+
+# define _STLP_ABSF (float)_STLP_DO_ABS(double)
+# define _STLP_ABSL (long double)_STLP_DO_ABS(double)
+# define _STLP_ATAN2F (float)_STLP_DO_ATAN2(double)
+# define _STLP_ATAN2L (long double)_STLP_DO_ATAN2(double)
+# define _STLP_SINF   (float)_STLP_DO_SIN(double)
+# define _STLP_SINL   (long double)_STLP_DO_SIN(double)
+# define _STLP_COSF   (float)_STLP_DO_COS(double)
+# define _STLP_COSL   (long double)_STLP_DO_COS(double)
+# define _STLP_SQRTF  (float)_STLP_DO_SQRT(double)
+# define _STLP_SQRTL  (long double)_STLP_DO_SQRT(double)
+# define _STLP_EXPF   (float)_STLP_DO_EXP(double)
+# define _STLP_EXPL   (long double)_STLP_DO_EXP(double)
+# define _STLP_LOG10F   (float)_STLP_DO_LOG10(double)
+# define _STLP_LOG10L   (long double)_STLP_DO_LOG10(double)
+# define _STLP_LOGF   (float)_STLP_DO_LOG(double)
+# define _STLP_LOGL   (long double)_STLP_DO_LOG(double)
+# define _STLP_SINHF   (float)_STLP_DO_SINH(double)
+# define _STLP_SINHL   (long double)_STLP_DO_SINH(double)
+# define _STLP_COSHF   (float)_STLP_DO_COSH(double)
+# define _STLP_COSHL   (long double)_STLP_DO_COSH(double)
+# define _STLP_HYPOTF   (float)_STLP_DO_HYPOT(double)
+# define _STLP_HYPOTL   (long double)_STLP_DO_HYPOT(double)
+
+#endif
+
+# define _STLP_ABS      (double)_STLP_DO_ABS(double)
+# define _STLP_ATAN2    (double)_STLP_DO_ATAN2(double)
+# define _STLP_SIN      (double)_STLP_DO_SIN(double)
+# define _STLP_COS      (double)_STLP_DO_COS(double)
+# define _STLP_SQRT     (double)_STLP_DO_SQRT(double)
+# define _STLP_EXP      (double)_STLP_DO_EXP(double)
+# define _STLP_LOG10    (double)_STLP_DO_LOG10(double)
+# define _STLP_LOG      (double)_STLP_DO_LOG(double)
+# define _STLP_SINH     (double)_STLP_DO_SINH(double)
+# define _STLP_COSH     (double)_STLP_DO_COSH(double)
+# define _STLP_HYPOT    _STLP_DO_HYPOT(double)
+
+#endif