From 23b7c6eb4d29bfeae018ce44d5ffeec39e01314c Mon Sep 17 00:00:00 2001 From: Dmitri Naumov <dmitri.naumov@ufz.de> Date: Wed, 20 Apr 2016 14:52:53 +0200 Subject: [PATCH] Pass r-values to PiecewiseLinearInterpolation ctor. --- Applications/ApplicationsLib/ProjectData.cpp | 7 ++++--- NumLib/Function/LinearInterpolationAlongPolyline.cpp | 3 ++- Tests/MathLib/TestPiecewiseLinearInterpolation.cpp | 6 ++++-- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/Applications/ApplicationsLib/ProjectData.cpp b/Applications/ApplicationsLib/ProjectData.cpp index d8feea6de30..58cf4244c20 100644 --- a/Applications/ApplicationsLib/ProjectData.cpp +++ b/Applications/ApplicationsLib/ProjectData.cpp @@ -359,8 +359,8 @@ void ProjectData::parseNonlinearSolvers(BaseLib::ConfigTree const& config) static std::unique_ptr<MathLib::PiecewiseLinearInterpolation> createPiecewiseLinearInterpolation(BaseLib::ConfigTree const& config) { - auto const coords = config.getConfParam<std::vector<double>>("coords"); - auto const values = config.getConfParam<std::vector<double>>("values"); + auto coords = config.getConfParam<std::vector<double>>("coords"); + auto values = config.getConfParam<std::vector<double>>("values"); if (coords.empty() || values.empty()) { ERR("The given co-ordinates or values vector is empty."); @@ -373,7 +373,8 @@ createPiecewiseLinearInterpolation(BaseLib::ConfigTree const& config) } return std::unique_ptr<MathLib::PiecewiseLinearInterpolation>{ - new MathLib::PiecewiseLinearInterpolation{coords, values}}; + new MathLib::PiecewiseLinearInterpolation{std::move(coords), + std::move(values)}}; } void ProjectData::parseCurves( diff --git a/NumLib/Function/LinearInterpolationAlongPolyline.cpp b/NumLib/Function/LinearInterpolationAlongPolyline.cpp index a9ad05c2ce6..115978a9bbc 100644 --- a/NumLib/Function/LinearInterpolationAlongPolyline.cpp +++ b/NumLib/Function/LinearInterpolationAlongPolyline.cpp @@ -55,7 +55,8 @@ MathLib::PiecewiseLinearInterpolation LinearInterpolationAlongPolyline::createIn } } - return MathLib::PiecewiseLinearInterpolation(vec_known_dist, vec_known_values); + return MathLib::PiecewiseLinearInterpolation{std::move(vec_known_dist), + std::move(vec_known_values)}; } double LinearInterpolationAlongPolyline::operator()(const MathLib::Point3d& pnt) const diff --git a/Tests/MathLib/TestPiecewiseLinearInterpolation.cpp b/Tests/MathLib/TestPiecewiseLinearInterpolation.cpp index e6fdbfc22f7..2d65607999a 100644 --- a/Tests/MathLib/TestPiecewiseLinearInterpolation.cpp +++ b/Tests/MathLib/TestPiecewiseLinearInterpolation.cpp @@ -32,7 +32,8 @@ TEST(MathLibInterpolationAlgorithms, PiecewiseLinearInterpolation) } } - MathLib::PiecewiseLinearInterpolation interpolation(supp_pnts, values); + MathLib::PiecewiseLinearInterpolation interpolation{std::move(supp_pnts), + std::move(values)}; // Interpolation for (std::size_t k(0); k<size-1; ++k) { ASSERT_NEAR(0.5, interpolation.getValue(k+0.5), std::numeric_limits<double>::epsilon()); @@ -67,7 +68,8 @@ TEST(MathLibInterpolationAlgorithms, PiecewiseLinearInterpolationSupportPntsInRe } } - MathLib::PiecewiseLinearInterpolation interpolation(supp_pnts, values); + MathLib::PiecewiseLinearInterpolation interpolation{std::move(supp_pnts), + std::move(values)}; // Interpolation for (std::size_t k(0); k<size-1; ++k) { ASSERT_NEAR(0.5, interpolation.getValue(k+0.5), std::numeric_limits<double>::epsilon()); -- GitLab