5 #ifndef __pinocchio_math_mutliprecision_mpfr_hpp__ 
    6 #define __pinocchio_math_mutliprecision_mpfr_hpp__ 
   11 #include <boost/serialization/nvp.hpp> 
   12 #include <boost/multiprecision/mpfr.hpp> 
   18     boost::multiprecision::mpfr_allocation_type S_alloc,
 
   19     boost::multiprecision::expression_template_option S_et,
 
   21     boost::multiprecision::mpfr_allocation_type C_alloc,
 
   22     boost::multiprecision::expression_template_option C_et,
 
   24     boost::multiprecision::mpfr_allocation_type X_alloc,
 
   25     boost::multiprecision::expression_template_option X_et>
 
   27     boost::multiprecision::
 
   28       number<boost::multiprecision::mpfr_float_backend<X_digits10, X_alloc>, X_et>,
 
   29     boost::multiprecision::
 
   30       number<boost::multiprecision::mpfr_float_backend<S_digits10, S_alloc>, S_et>,
 
   31     boost::multiprecision::
 
   32       number<boost::multiprecision::mpfr_float_backend<C_digits10, C_alloc>, C_et>>
 
   35       boost::multiprecision::
 
   36         number<boost::multiprecision::mpfr_float_backend<X_digits10, X_alloc>, X_et> 
const & 
a,
 
   37       boost::multiprecision::
 
   38         number<boost::multiprecision::mpfr_float_backend<S_digits10, S_alloc>, S_et> * sa,
 
   39       boost::multiprecision::
 
   40         number<boost::multiprecision::mpfr_float_backend<C_digits10, C_alloc>, C_et> * ca)
 
   42       mpfr_srcptr x_mpfr((
a.backend().data()));
 
   43       mpfr_ptr s_mpfr(sa->backend().data());
 
   44       mpfr_ptr c_mpfr(ca->backend().data());
 
   45       mpfr_sin_cos(s_mpfr, c_mpfr, x_mpfr, MPFR_RNDN);
 
   50 #endif // ifndef __pinocchio_math_mutliprecision_hpp__