Spline helpers returns references

This commit is contained in:
Thomas FORGIONE 2015-04-24 09:44:11 +02:00
parent 708c21b680
commit 357e4a29dd
1 changed files with 4 additions and 4 deletions

View File

@ -181,7 +181,7 @@ namespace detail
template<std::size_t I, std::size_t J, typename... Types> template<std::size_t I, std::size_t J, typename... Types>
struct evalSplineHelper struct evalSplineHelper
{ {
std::tuple<Types...> operator()( std::tuple<Types...>& operator()(
std::vector<std::tuple<Types...>> const& controlPoints, std::vector<std::tuple<Types...>> const& controlPoints,
std::vector<float> const& nodes, std::vector<float> const& nodes,
int degree, int degree,
@ -204,7 +204,7 @@ struct evalSplineHelper
template<std::size_t J, typename... Types> template<std::size_t J, typename... Types>
struct evalSplineHelper<0,J,Types...> struct evalSplineHelper<0,J,Types...>
{ {
std::tuple<Types...> operator()( std::tuple<Types...>& operator()(
std::vector<std::tuple<Types...>> const& controlPoints, std::vector<std::tuple<Types...>> const& controlPoints,
std::vector<float> const& nodes, std::vector<float> const& nodes,
int degree, int degree,
@ -232,7 +232,7 @@ template<std::size_t I, std::size_t J, typename... Types>
struct evalDerivativeSplineHelper struct evalDerivativeSplineHelper
{ {
std::tuple<Types...> operator()(std::vector<std::tuple<Types...>> const& controlPoints , std::vector<float> const& nodes, int degree, float f, std::tuple<Types...>& tuple) std::tuple<Types...>& operator()(std::vector<std::tuple<Types...>> const& controlPoints , std::vector<float> const& nodes, int degree, float f, std::tuple<Types...>& tuple)
{ {
std::get<J>(tuple) = 0; std::get<J>(tuple) = 0;
@ -258,7 +258,7 @@ struct evalDerivativeSplineHelper
template<std::size_t J,typename... Types> template<std::size_t J,typename... Types>
struct evalDerivativeSplineHelper<0,J,Types...> struct evalDerivativeSplineHelper<0,J,Types...>
{ {
std::tuple<Types...> operator()(std::vector<std::tuple<Types...>> const& controlPoints , std::vector<float> const& nodes, int degree, float f, std::tuple<Types...>& tuple) std::tuple<Types...>& operator()(std::vector<std::tuple<Types...>> const& controlPoints , std::vector<float> const& nodes, int degree, float f, std::tuple<Types...>& tuple)
{ {
// Nothing to do here // Nothing to do here
return tuple; return tuple;