Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:40:07

0001 // Copyright John Maddock 2008.
0002 
0003 // Use, modification and distribution are subject to the
0004 // Boost Software License, Version 1.0.
0005 // (See accompanying file LICENSE_1_0.txt
0006 // or copy at http://www.boost.org/LICENSE_1_0.txt)
0007 
0008 #ifndef BOOST_MATH_SPECIAL_ROUND_FWD_HPP
0009 #define BOOST_MATH_SPECIAL_ROUND_FWD_HPP
0010 
0011 #include <boost/math/tools/config.hpp>
0012 #include <boost/math/tools/promotion.hpp>
0013 
0014 #ifdef _MSC_VER
0015 #pragma once
0016 #endif
0017 
0018 namespace boost
0019 {
0020    namespace math
0021    { 
0022 
0023    template <class T, class Policy>
0024    typename tools::promote_args<T>::type trunc(const T& v, const Policy& pol);
0025    template <class T>
0026    typename tools::promote_args<T>::type trunc(const T& v);
0027    template <class T, class Policy>
0028    int itrunc(const T& v, const Policy& pol);
0029    template <class T>
0030    int itrunc(const T& v);
0031    template <class T, class Policy>
0032    long ltrunc(const T& v, const Policy& pol);
0033    template <class T>
0034    long ltrunc(const T& v);
0035    template <class T, class Policy>
0036    long long lltrunc(const T& v, const Policy& pol);
0037    template <class T>
0038    long long lltrunc(const T& v);
0039    template <class T, class Policy>
0040    typename tools::promote_args<T>::type round(const T& v, const Policy& pol);
0041    template <class T>
0042    typename tools::promote_args<T>::type round(const T& v);
0043    template <class T, class Policy>
0044    int iround(const T& v, const Policy& pol);
0045    template <class T>
0046    int iround(const T& v);
0047    template <class T, class Policy>
0048    long lround(const T& v, const Policy& pol);
0049    template <class T>
0050    long lround(const T& v);
0051    template <class T, class Policy>
0052    long long llround(const T& v, const Policy& pol);
0053    template <class T>
0054    long long llround(const T& v);
0055    template <class T, class Policy>
0056    T modf(const T& v, T* ipart, const Policy& pol);
0057    template <class T>
0058    T modf(const T& v, T* ipart);
0059    template <class T, class Policy>
0060    T modf(const T& v, int* ipart, const Policy& pol);
0061    template <class T>
0062    T modf(const T& v, int* ipart);
0063    template <class T, class Policy>
0064    T modf(const T& v, long* ipart, const Policy& pol);
0065    template <class T>
0066    T modf(const T& v, long* ipart);
0067    template <class T, class Policy>
0068    T modf(const T& v, long long* ipart, const Policy& pol);
0069    template <class T>
0070    T modf(const T& v, long long* ipart);
0071    }
0072 }
0073 
0074 #undef BOOST_MATH_STD_USING
0075 #define BOOST_MATH_STD_USING BOOST_MATH_STD_USING_CORE\
0076    using boost::math::round;\
0077    using boost::math::iround;\
0078    using boost::math::lround;\
0079    using boost::math::trunc;\
0080    using boost::math::itrunc;\
0081    using boost::math::ltrunc;\
0082    using boost::math::modf;
0083 
0084 
0085 #endif // BOOST_MATH_SPECIAL_ROUND_FWD_HPP
0086