94 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			94 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|   | // Copyright John Maddock 2008. | ||
|  | 
 | ||
|  | // Use, modification and distribution are subject to the | ||
|  | // Boost Software License, Version 1.0. | ||
|  | // (See accompanying file LICENSE_1_0.txt | ||
|  | // or copy at http://www.boost.org/LICENSE_1_0.txt) | ||
|  | 
 | ||
|  | #ifndef BOOST_MATH_SPECIAL_ROUND_FWD_HPP | ||
|  | #define BOOST_MATH_SPECIAL_ROUND_FWD_HPP | ||
|  | 
 | ||
|  | #include <boost/config.hpp> | ||
|  | #include <boost/math/tools/promotion.hpp> | ||
|  | 
 | ||
|  | #ifdef _MSC_VER | ||
|  | #pragma once | ||
|  | #endif | ||
|  | 
 | ||
|  | namespace boost | ||
|  | { | ||
|  |    namespace math | ||
|  |    {  | ||
|  | 
 | ||
|  |    template <class T, class Policy> | ||
|  |    typename tools::promote_args<T>::type trunc(const T& v, const Policy& pol); | ||
|  |    template <class T> | ||
|  |    typename tools::promote_args<T>::type trunc(const T& v); | ||
|  |    template <class T, class Policy> | ||
|  |    int itrunc(const T& v, const Policy& pol); | ||
|  |    template <class T> | ||
|  |    int itrunc(const T& v); | ||
|  |    template <class T, class Policy> | ||
|  |    long ltrunc(const T& v, const Policy& pol); | ||
|  |    template <class T> | ||
|  |    long ltrunc(const T& v); | ||
|  | #ifdef BOOST_HAS_LONG_LONG | ||
|  |    template <class T, class Policy> | ||
|  |    boost::long_long_type lltrunc(const T& v, const Policy& pol); | ||
|  |    template <class T> | ||
|  |    boost::long_long_type lltrunc(const T& v); | ||
|  | #endif | ||
|  |    template <class T, class Policy> | ||
|  |    typename tools::promote_args<T>::type round(const T& v, const Policy& pol); | ||
|  |    template <class T> | ||
|  |    typename tools::promote_args<T>::type round(const T& v); | ||
|  |    template <class T, class Policy> | ||
|  |    int iround(const T& v, const Policy& pol); | ||
|  |    template <class T> | ||
|  |    int iround(const T& v); | ||
|  |    template <class T, class Policy> | ||
|  |    long lround(const T& v, const Policy& pol); | ||
|  |    template <class T> | ||
|  |    long lround(const T& v); | ||
|  | #ifdef BOOST_HAS_LONG_LONG | ||
|  |    template <class T, class Policy> | ||
|  |    boost::long_long_type llround(const T& v, const Policy& pol); | ||
|  |    template <class T> | ||
|  |    boost::long_long_type llround(const T& v); | ||
|  | #endif | ||
|  |    template <class T, class Policy> | ||
|  |    T modf(const T& v, T* ipart, const Policy& pol); | ||
|  |    template <class T> | ||
|  |    T modf(const T& v, T* ipart); | ||
|  |    template <class T, class Policy> | ||
|  |    T modf(const T& v, int* ipart, const Policy& pol); | ||
|  |    template <class T> | ||
|  |    T modf(const T& v, int* ipart); | ||
|  |    template <class T, class Policy> | ||
|  |    T modf(const T& v, long* ipart, const Policy& pol); | ||
|  |    template <class T> | ||
|  |    T modf(const T& v, long* ipart); | ||
|  | #ifdef BOOST_HAS_LONG_LONG | ||
|  |    template <class T, class Policy> | ||
|  |    T modf(const T& v, boost::long_long_type* ipart, const Policy& pol); | ||
|  |    template <class T> | ||
|  |    T modf(const T& v, boost::long_long_type* ipart); | ||
|  | #endif | ||
|  | 
 | ||
|  |    } | ||
|  | } | ||
|  | 
 | ||
|  | #undef BOOST_MATH_STD_USING | ||
|  | #define BOOST_MATH_STD_USING BOOST_MATH_STD_USING_CORE\ | ||
|  |    using boost::math::round;\ | ||
|  |    using boost::math::iround;\ | ||
|  |    using boost::math::lround;\ | ||
|  |    using boost::math::trunc;\ | ||
|  |    using boost::math::itrunc;\ | ||
|  |    using boost::math::ltrunc;\ | ||
|  |    using boost::math::modf; | ||
|  | 
 | ||
|  | 
 | ||
|  | #endif // BOOST_MATH_SPECIAL_ROUND_FWD_HPP | ||
|  | 
 |