This header defines the quat_traits template which can be specialized to register user-defined quaternion types into Boost QVM.
#include <boost/qvm/quat_traits.hpp>
namespace boost
{
namespace qvm
{
template <class T>
struct is_quat
{
static bool const value=/*unspecified*/;
};
template <class Q>
struct quat_traits
{
/*main template members unspecified*/
};
/*
User-defined (possibly partial) specializations:
template <>
struct quat_traits<Q>
{
typedef /*user-defined*/ scalar_type;
template <int I> static inline scalar_type read_element( Quaternion const & q );
template <int I> static inline scalar_type & write_element( Quaternion & q );
};
*/
}
}