Commit 652a816b authored by Davis King's avatar Davis King

Changed code to avoid another visual studio compiler bug.

--HG--
extra : convert_revision : svn%3Afdd8eb12-d10e-0410-9acb-85c331704f74/trunk%402787
parent 29679fc6
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
#include "../enable_if.h" #include "../enable_if.h"
#include "matrix_data_layout.h" #include "matrix_data_layout.h"
#include "../algs.h"
namespace dlib namespace dlib
{ {
...@@ -29,6 +30,16 @@ namespace dlib ...@@ -29,6 +30,16 @@ namespace dlib
template < typename EXP > template < typename EXP >
struct is_small_matrix<EXP, typename enable_if_c<EXP::NR>=1 && EXP::NC>=1 && struct is_small_matrix<EXP, typename enable_if_c<EXP::NR>=1 && EXP::NC>=1 &&
EXP::NR<=17 && EXP::NC<=17 && (EXP::cost <= 70)>::type> { static const bool value = true; }; EXP::NR<=17 && EXP::NC<=17 && (EXP::cost <= 70)>::type> { static const bool value = true; };
template < typename EXP, typename enable = void >
struct has_column_major_layout { static const bool value = false; };
template < typename EXP >
struct has_column_major_layout<EXP, typename enable_if<is_same_type<typename EXP::layout_type, column_major_layout> >::type >
{ static const bool value = true; };
} }
// ---------------------------------------------------------------------------------------- // ----------------------------------------------------------------------------------------
...@@ -93,7 +104,7 @@ namespace dlib ...@@ -93,7 +104,7 @@ namespace dlib
// ---------------------------------------------------------------------------------------- // ----------------------------------------------------------------------------------------
template <typename EXP1, typename EXP2> template <typename EXP1, typename EXP2>
inline typename enable_if<is_same_type<typename EXP1::layout_type, row_major_layout> >::type inline typename disable_if<ma::has_column_major_layout<EXP1> >::type
matrix_assign_default ( matrix_assign_default (
EXP1& dest, EXP1& dest,
const EXP2& src, const EXP2& src,
...@@ -173,7 +184,7 @@ namespace dlib ...@@ -173,7 +184,7 @@ namespace dlib
// ---------------------------------------------------------------------------------------- // ----------------------------------------------------------------------------------------
template <typename EXP1, typename EXP2> template <typename EXP1, typename EXP2>
inline typename enable_if<is_same_type<typename EXP1::layout_type, column_major_layout> >::type inline typename enable_if<ma::has_column_major_layout<EXP1> >::type
matrix_assign_default ( matrix_assign_default (
EXP1& dest, EXP1& dest,
const EXP2& src, const EXP2& src,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment