diff options
Diffstat (limited to 'boost/numeric/odeint/external/vexcl/vexcl_copy.hpp')
-rw-r--r-- | boost/numeric/odeint/external/vexcl/vexcl_copy.hpp | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/boost/numeric/odeint/external/vexcl/vexcl_copy.hpp b/boost/numeric/odeint/external/vexcl/vexcl_copy.hpp new file mode 100644 index 0000000000..6a5afac9fa --- /dev/null +++ b/boost/numeric/odeint/external/vexcl/vexcl_copy.hpp @@ -0,0 +1,55 @@ +/* + [auto_generated] + boost/numeric/odeint/external/vexcl/vexcl_copy.hpp + + [begin_description] + copy_impl specializations for vexcl + [end_description] + + Copyright 2009-2011 Karsten Ahnert + Copyright 2009-2011 Mario Mulansky + + Distributed under 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_NUMERIC_ODEINT_EXTERNAL_VEXCL_VEXCL_COPY_HPP_INCLUDED +#define BOOST_NUMERIC_ODEINT_EXTERNAL_VEXCL_VEXCL_COPY_HPP_INCLUDED + +#include <vexcl/vector.hpp> +#include <vexcl/multivector.hpp> + +#include <boost/numeric/odeint/util/copy.hpp> + +namespace boost { +namespace numeric { +namespace odeint { + +template< typename T1, typename T2 > +struct copy_impl< vex::vector<T1>, vex::vector<T2> > +{ + static void copy( const vex::vector<T1> &from , vex::vector<T2> &to ) + { + to = from; + } +}; + +template< typename T1, typename T2, size_t N > +struct copy_impl< vex::multivector<T1, N>, vex::multivector<T2, N> > +{ + static void copy( const vex::multivector<T1, N> &from , vex::multivector<T2, N> &to ) + { + to = from; + } +}; + + +} // namespace odeint +} // namespace numeric +} // namespace boost + + + +#endif // BOOST_NUMERIC_ODEINT_EXTERNAL_VEXCL_VEXCL_COPY_HPP_INCLUDED |