aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/Visitor.h
diff options
context:
space:
mode:
authorGravatar Benoit Jacob <jacob.benoit.1@gmail.com>2011-01-25 21:28:20 -0500
committerGravatar Benoit Jacob <jacob.benoit.1@gmail.com>2011-01-25 21:28:20 -0500
commitc350f6f12c85ee5c52cda82326f580dfbc9eb69f (patch)
tree740688a98b8c56cf570b3b356d71d46c39cbd691 /Eigen/src/Core/Visitor.h
parent39536d44da5e7c286e601b1ac35d535841ba6284 (diff)
fix bug #161
Diffstat (limited to 'Eigen/src/Core/Visitor.h')
-rw-r--r--Eigen/src/Core/Visitor.h65
1 files changed, 11 insertions, 54 deletions
diff --git a/Eigen/src/Core/Visitor.h b/Eigen/src/Core/Visitor.h
index 556c6fcd7..378ebcba1 100644
--- a/Eigen/src/Core/Visitor.h
+++ b/Eigen/src/Core/Visitor.h
@@ -183,8 +183,9 @@ struct functor_traits<max_coeff_visitor<Scalar> > {
* \sa DenseBase::minCoeff(Index*), DenseBase::maxCoeff(Index*,Index*), DenseBase::visitor(), DenseBase::minCoeff()
*/
template<typename Derived>
+template<typename IndexType>
typename internal::traits<Derived>::Scalar
-DenseBase<Derived>::minCoeff(Index* row, Index* col) const
+DenseBase<Derived>::minCoeff(IndexType* row, IndexType* col) const
{
internal::min_coeff_visitor<Derived> minVisitor;
this->visit(minVisitor);
@@ -196,11 +197,12 @@ DenseBase<Derived>::minCoeff(Index* row, Index* col) const
/** \returns the minimum of all coefficients of *this
* and puts in *index its location.
*
- * \sa DenseBase::minCoeff(Index*,Index*), DenseBase::maxCoeff(Index*,Index*), DenseBase::visitor(), DenseBase::minCoeff()
+ * \sa DenseBase::minCoeff(IndexType*,IndexType*), DenseBase::maxCoeff(IndexType*,IndexType*), DenseBase::visitor(), DenseBase::minCoeff()
*/
template<typename Derived>
+template<typename IndexType>
typename internal::traits<Derived>::Scalar
-DenseBase<Derived>::minCoeff(Index* index) const
+DenseBase<Derived>::minCoeff(IndexType* index) const
{
EIGEN_STATIC_ASSERT_VECTOR_ONLY(Derived)
internal::min_coeff_visitor<Derived> minVisitor;
@@ -212,11 +214,12 @@ DenseBase<Derived>::minCoeff(Index* index) const
/** \returns the maximum of all coefficients of *this
* and puts in *row and *col its location.
*
- * \sa DenseBase::minCoeff(Index*,Index*), DenseBase::visitor(), DenseBase::maxCoeff()
+ * \sa DenseBase::minCoeff(IndexType*,IndexType*), DenseBase::visitor(), DenseBase::maxCoeff()
*/
template<typename Derived>
+template<typename IndexType>
typename internal::traits<Derived>::Scalar
-DenseBase<Derived>::maxCoeff(Index* row, Index* col) const
+DenseBase<Derived>::maxCoeff(IndexType* row, IndexType* col) const
{
internal::max_coeff_visitor<Derived> maxVisitor;
this->visit(maxVisitor);
@@ -228,11 +231,12 @@ DenseBase<Derived>::maxCoeff(Index* row, Index* col) const
/** \returns the maximum of all coefficients of *this
* and puts in *index its location.
*
- * \sa DenseBase::maxCoeff(Index*,Index*), DenseBase::minCoeff(Index*,Index*), DenseBase::visitor(), DenseBase::maxCoeff()
+ * \sa DenseBase::maxCoeff(IndexType*,IndexType*), DenseBase::minCoeff(IndexType*,IndexType*), DenseBase::visitor(), DenseBase::maxCoeff()
*/
template<typename Derived>
+template<typename IndexType>
typename internal::traits<Derived>::Scalar
-DenseBase<Derived>::maxCoeff(Index* index) const
+DenseBase<Derived>::maxCoeff(IndexType* index) const
{
EIGEN_STATIC_ASSERT_VECTOR_ONLY(Derived)
internal::max_coeff_visitor<Derived> maxVisitor;
@@ -241,51 +245,4 @@ DenseBase<Derived>::maxCoeff(Index* index) const
return maxVisitor.res;
}
-#ifdef EIGEN2_SUPPORT
-
-template<typename Derived>
-typename internal::traits<Derived>::Scalar
-DenseBase<Derived>::minCoeff(int* row, int* col) const
-{
- Index r, c;
- Scalar result = this->minCoeff(&r, &c);
- *row = int(r);
- *col = int(c);
- return result;
-}
-
-template<typename Derived>
-typename internal::traits<Derived>::Scalar
-DenseBase<Derived>::minCoeff(int* index) const
-{
- Index i;
- Scalar result = this->minCoeff(&i);
- *index = int(i);
- return result;
-}
-
-template<typename Derived>
-typename internal::traits<Derived>::Scalar
-DenseBase<Derived>::maxCoeff(int* row, int* col) const
-{
- Index r, c;
- Scalar result = this->maxCoeff(&r, &c);
- *row = int(r);
- *col = int(c);
- return result;
-}
-
-template<typename Derived>
-typename internal::traits<Derived>::Scalar
-DenseBase<Derived>::maxCoeff(int* index) const
-{
- Index i;
- Scalar result = this->maxCoeff(&i);
- *index = int(i);
- return result;
-}
-
-#endif // EIGEN2_SUPPORT
-
-
#endif // EIGEN_VISITOR_H