From ea5145bb31c1e02a14041a81546e02bce55eef5a Mon Sep 17 00:00:00 2001
From: Joseph Mirabel <jmirabel@laas.fr>
Date: Fri, 4 Dec 2015 15:20:16 +0100
Subject: [PATCH] Graph-RandomShortcut: use inner path validation

* instead of GraphPathValidation for each random shorcut
---
 src/graph-optimizer.cc | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/graph-optimizer.cc b/src/graph-optimizer.cc
index 95e21f5..3972318 100644
--- a/src/graph-optimizer.cc
+++ b/src/graph-optimizer.cc
@@ -17,6 +17,7 @@
 #include <hpp/manipulation/graph-optimizer.hh>
 
 #include <hpp/manipulation/graph/edge.hh>
+#include <hpp/manipulation/graph-path-validation.hh>
 
 namespace hpp {
   namespace manipulation {
@@ -27,6 +28,9 @@ namespace hpp {
         expanded = PathVector::create
           (path->outputSize(), path->outputDerivativeSize()),
         toConcat;
+      GraphPathValidationPtr_t gpv = HPP_DYNAMIC_PTR_CAST (GraphPathValidation,
+              this->problem().pathValidation ());
+      const_cast <core::Problem&>(this->problem ()).pathValidation (gpv->innerValidation());
       unpack (path, expanded);
       ConstraintSetPtr_t c;
       for (std::size_t i_s = 0; i_s < expanded->numberPaths ();) {
@@ -51,6 +55,7 @@ namespace hpp {
         opted->concatenate (*toConcat);
       }
       pathOptimizer_.reset ();
+      const_cast <core::Problem&>(this->problem ()).pathValidation (gpv);
       return opted;
     }
 
-- 
GitLab