summaryrefslogtreecommitdiff
path: root/src/Coxeter_triangulation/include/gudhi/Functions/Linear_transformation.h
diff options
context:
space:
mode:
authorROUVREAU Vincent <vincent.rouvreau@inria.fr>2020-10-05 22:07:26 +0200
committerROUVREAU Vincent <vincent.rouvreau@inria.fr>2020-10-05 22:07:26 +0200
commitcf30dde33d2463172af32de208909f4638343bec (patch)
tree25fb9308cf3bf7a13ed62bfed7411a32fc96c1f5 /src/Coxeter_triangulation/include/gudhi/Functions/Linear_transformation.h
parenta4c6ab63074e3d79e2f0432b392f4a1bcedfce8f (diff)
Remove the Function inheritance and keep concept
Diffstat (limited to 'src/Coxeter_triangulation/include/gudhi/Functions/Linear_transformation.h')
-rw-r--r--src/Coxeter_triangulation/include/gudhi/Functions/Linear_transformation.h12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/Coxeter_triangulation/include/gudhi/Functions/Linear_transformation.h b/src/Coxeter_triangulation/include/gudhi/Functions/Linear_transformation.h
index 9228d487..82e25bb9 100644
--- a/src/Coxeter_triangulation/include/gudhi/Functions/Linear_transformation.h
+++ b/src/Coxeter_triangulation/include/gudhi/Functions/Linear_transformation.h
@@ -13,8 +13,6 @@
#include <cstdlib> // for std::size_t
-#include <gudhi/Functions/Function.h>
-
#include <Eigen/Dense>
namespace Gudhi {
@@ -29,24 +27,24 @@ namespace coxeter_triangulation {
* the concept FunctionForImplicitManifold.
*/
template <class Function_>
-struct Linear_transformation : public Function {
+struct Linear_transformation {
/**
* \brief Value of the function at a specified point.
* @param[in] p The input point. The dimension needs to coincide with the ambient dimension.
*/
- virtual Eigen::VectorXd operator()(const Eigen::VectorXd& p) const override {
+ Eigen::VectorXd operator()(const Eigen::VectorXd& p) const {
Eigen::VectorXd result = fun_(matrix_.householderQr().solve(p));
return result;
}
/** \brief Returns the domain (ambient) dimension. */
- virtual std::size_t amb_d() const override { return fun_.amb_d(); }
+ std::size_t amb_d() const { return fun_.amb_d(); }
/** \brief Returns the codomain dimension. */
- virtual std::size_t cod_d() const override { return fun_.cod_d(); }
+ std::size_t cod_d() const { return fun_.cod_d(); }
/** \brief Returns a point on the zero-set. */
- virtual Eigen::VectorXd seed() const override {
+ Eigen::VectorXd seed() const {
Eigen::VectorXd result = fun_.seed();
result = matrix_ * result;
return result;