ipa: libipa: vector: Rename the dot product operator*() to dot()
The Vector class defines a set of arithmetic operators between two vectors or a vector and a scalar. All the operators perform element-wise operations, except for the operator*() that computes the dot product. This is inconsistent and confusing. Replace the operator with a dot() function. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Milan Zamazal <mzamazal@redhat.com>
This commit is contained in:
parent
b68d898909
commit
dd624b3fff
2 changed files with 15 additions and 15 deletions
|
@ -78,13 +78,6 @@ namespace ipa {
|
||||||
* \return The sum of the two vectors
|
* \return The sum of the two vectors
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
|
||||||
* \fn Vector::operator*(const Vector<T, Rows> &other) const
|
|
||||||
* \brief Compute the dot product
|
|
||||||
* \param[in] other The other vector
|
|
||||||
* \return The dot product of the two vectors
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \fn Vector::operator*(T factor) const
|
* \fn Vector::operator*(T factor) const
|
||||||
* \brief Multiply the vector by a scalar
|
* \brief Multiply the vector by a scalar
|
||||||
|
@ -99,6 +92,13 @@ namespace ipa {
|
||||||
* \return The vector divided by \a factor
|
* \return The vector divided by \a factor
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \fn Vector::dot(const Vector<T, Rows> &other) const
|
||||||
|
* \brief Compute the dot product
|
||||||
|
* \param[in] other The other vector
|
||||||
|
* \return The dot product of the two vectors
|
||||||
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \fn constexpr T &Vector::x()
|
* \fn constexpr T &Vector::x()
|
||||||
* \brief Convenience function to access the first element of the vector
|
* \brief Convenience function to access the first element of the vector
|
||||||
|
|
|
@ -82,14 +82,6 @@ public:
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
constexpr T operator*(const Vector<T, Rows> &other) const
|
|
||||||
{
|
|
||||||
T ret = 0;
|
|
||||||
for (unsigned int i = 0; i < Rows; i++)
|
|
||||||
ret += data_[i] * other[i];
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
constexpr Vector<T, Rows> operator*(T factor) const
|
constexpr Vector<T, Rows> operator*(T factor) const
|
||||||
{
|
{
|
||||||
Vector<T, Rows> ret;
|
Vector<T, Rows> ret;
|
||||||
|
@ -106,6 +98,14 @@ public:
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
constexpr T dot(const Vector<T, Rows> &other) const
|
||||||
|
{
|
||||||
|
T ret = 0;
|
||||||
|
for (unsigned int i = 0; i < Rows; i++)
|
||||||
|
ret += data_[i] * other[i];
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
#ifndef __DOXYGEN__
|
#ifndef __DOXYGEN__
|
||||||
template<bool Dependent = false, typename = std::enable_if_t<Dependent || Rows >= 1>>
|
template<bool Dependent = false, typename = std::enable_if_t<Dependent || Rows >= 1>>
|
||||||
#endif /* __DOXYGEN__ */
|
#endif /* __DOXYGEN__ */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue