libstdc++
|
00001 // -*- C++ -*- compatibility header. 00002 00003 // Copyright (C) 2002-2016 Free Software Foundation, Inc. 00004 // 00005 // This file is part of the GNU ISO C++ Library. This library is free 00006 // software; you can redistribute it and/or modify it under the 00007 // terms of the GNU General Public License as published by the 00008 // Free Software Foundation; either version 3, or (at your option) 00009 // any later version. 00010 00011 // This library is distributed in the hope that it will be useful, 00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 // GNU General Public License for more details. 00015 00016 // Under Section 7 of GPL version 3, you are granted additional 00017 // permissions described in the GCC Runtime Library Exception, version 00018 // 3.1, as published by the Free Software Foundation. 00019 00020 // You should have received a copy of the GNU General Public License and 00021 // a copy of the GCC Runtime Library Exception along with this program; 00022 // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 00023 // <http://www.gnu.org/licenses/>. 00024 00025 /** @file math.h 00026 * This is a Standard C++ Library header. 00027 */ 00028 00029 #if !defined __cplusplus || defined _GLIBCXX_INCLUDE_NEXT_C_HEADERS 00030 # include_next <math.h> 00031 #else 00032 00033 #ifndef _GLIBCXX_MATH_H 00034 #define _GLIBCXX_MATH_H 1 00035 00036 # include <cmath> 00037 00038 using std::abs; 00039 using std::acos; 00040 using std::asin; 00041 using std::atan; 00042 using std::atan2; 00043 using std::cos; 00044 using std::sin; 00045 using std::tan; 00046 using std::cosh; 00047 using std::sinh; 00048 using std::tanh; 00049 using std::exp; 00050 using std::frexp; 00051 using std::ldexp; 00052 using std::log; 00053 using std::log10; 00054 using std::modf; 00055 using std::pow; 00056 using std::sqrt; 00057 using std::ceil; 00058 using std::fabs; 00059 using std::floor; 00060 using std::fmod; 00061 00062 #if _GLIBCXX_USE_C99_MATH 00063 using std::fpclassify; 00064 using std::isfinite; 00065 using std::isinf; 00066 using std::isnan; 00067 using std::isnormal; 00068 using std::signbit; 00069 using std::isgreater; 00070 using std::isgreaterequal; 00071 using std::isless; 00072 using std::islessequal; 00073 using std::islessgreater; 00074 using std::isunordered; 00075 #endif 00076 00077 #if __cplusplus >= 201103L && defined(_GLIBCXX_USE_C99_MATH_TR1) 00078 using std::acosh; 00079 using std::asinh; 00080 using std::atanh; 00081 using std::cbrt; 00082 using std::copysign; 00083 using std::erf; 00084 using std::erfc; 00085 using std::exp2; 00086 using std::expm1; 00087 using std::fdim; 00088 using std::fma; 00089 using std::fmax; 00090 using std::fmin; 00091 using std::hypot; 00092 using std::ilogb; 00093 using std::lgamma; 00094 using std::llrint; 00095 using std::llround; 00096 using std::log1p; 00097 using std::log2; 00098 using std::logb; 00099 using std::lrint; 00100 using std::lround; 00101 using std::nearbyint; 00102 using std::nextafter; 00103 using std::nexttoward; 00104 using std::remainder; 00105 using std::remquo; 00106 using std::rint; 00107 using std::round; 00108 using std::scalbln; 00109 using std::scalbn; 00110 using std::tgamma; 00111 using std::trunc; 00112 #endif // C++11 && _GLIBCXX_USE_C99_MATH_TR1 00113 00114 #if __STDCPP_WANT_MATH_SPEC_FUNCS__ == 1 00115 using std::assoc_laguerref; 00116 using std::assoc_laguerrel; 00117 using std::assoc_laguerre; 00118 using std::assoc_legendref; 00119 using std::assoc_legendrel; 00120 using std::assoc_legendre; 00121 using std::betaf; 00122 using std::betal; 00123 using std::beta; 00124 using std::comp_ellint_1f; 00125 using std::comp_ellint_1l; 00126 using std::comp_ellint_1; 00127 using std::comp_ellint_2f; 00128 using std::comp_ellint_2l; 00129 using std::comp_ellint_2; 00130 using std::comp_ellint_3f; 00131 using std::comp_ellint_3l; 00132 using std::comp_ellint_3; 00133 using std::cyl_bessel_if; 00134 using std::cyl_bessel_il; 00135 using std::cyl_bessel_i; 00136 using std::cyl_bessel_jf; 00137 using std::cyl_bessel_jl; 00138 using std::cyl_bessel_j; 00139 using std::cyl_bessel_kf; 00140 using std::cyl_bessel_kl; 00141 using std::cyl_bessel_k; 00142 using std::cyl_neumannf; 00143 using std::cyl_neumannl; 00144 using std::cyl_neumann; 00145 using std::ellint_1f; 00146 using std::ellint_1l; 00147 using std::ellint_1; 00148 using std::ellint_2f; 00149 using std::ellint_2l; 00150 using std::ellint_2; 00151 using std::ellint_3f; 00152 using std::ellint_3l; 00153 using std::ellint_3; 00154 using std::expintf; 00155 using std::expintl; 00156 using std::expint; 00157 using std::hermitef; 00158 using std::hermitel; 00159 using std::hermite; 00160 using std::laguerref; 00161 using std::laguerrel; 00162 using std::laguerre; 00163 using std::legendref; 00164 using std::legendrel; 00165 using std::legendre; 00166 using std::riemann_zetaf; 00167 using std::riemann_zetal; 00168 using std::riemann_zeta; 00169 using std::sph_besself; 00170 using std::sph_bessell; 00171 using std::sph_bessel; 00172 using std::sph_legendref; 00173 using std::sph_legendrel; 00174 using std::sph_legendre; 00175 using std::sph_neumannf; 00176 using std::sph_neumannl; 00177 using std::sph_neumann; 00178 #endif // __STDCPP_WANT_MATH_SPEC_FUNCS__ 00179 00180 #endif // _GLIBCXX_MATH_H 00181 #endif // __cplusplus