10 #ifndef EIGEN_ALLANDANY_H 11 #define EIGEN_ALLANDANY_H 17 template<
typename Derived,
int UnrollCount>
21 col = (UnrollCount-1) / Derived::RowsAtCompileTime,
22 row = (UnrollCount-1) % Derived::RowsAtCompileTime
25 static inline bool run(
const Derived &mat)
31 template<
typename Derived>
34 static inline bool run(
const Derived &mat) {
return mat.coeff(0, 0); }
37 template<
typename Derived>
40 static inline bool run(
const Derived &) {
return false; }
43 template<
typename Derived,
int UnrollCount>
47 col = (UnrollCount-1) / Derived::RowsAtCompileTime,
48 row = (UnrollCount-1) % Derived::RowsAtCompileTime
51 static inline bool run(
const Derived &mat)
57 template<
typename Derived>
60 static inline bool run(
const Derived &mat) {
return mat.coeff(0, 0); }
63 template<
typename Derived>
66 static inline bool run(
const Derived &) {
return false; }
78 template<
typename Derived>
82 unroll = SizeAtCompileTime !=
Dynamic 91 for(
Index j = 0; j < cols(); ++j)
92 for(
Index i = 0; i < rows(); ++i)
93 if (!coeff(i, j))
return false;
102 template<
typename Derived>
106 unroll = SizeAtCompileTime !=
Dynamic 115 for(
Index j = 0; j < cols(); ++j)
116 for(
Index i = 0; i < rows(); ++i)
117 if (coeff(i, j))
return true;
126 template<
typename Derived>
129 return derived().template cast<bool>().
template cast<Index>().sum();
136 template<
typename Derived>
139 return !((derived().array()==derived().array()).all());
146 template<
typename Derived>
149 return !((derived()-derived()).hasNaN());
154 #endif // EIGEN_ALLANDANY_H static bool run(const Derived &mat)
static bool run(const Derived &)
internal::traits< Derived >::Index Index
The type of indices.
iterative scaling algorithm to equilibrate rows and column norms in matrices
Holds information about the various numeric (i.e. scalar) types allowed by Eigen. ...
static bool run(const Derived &)
static bool run(const Derived &mat)
static bool run(const Derived &mat)
static bool run(const Derived &mat)
#define EIGEN_UNROLLING_LIMIT