Skip to content
Snippets Groups Projects
Commit eb4b73ba authored by Joseph Mirabel's avatar Joseph Mirabel Committed by Joseph Mirabel
Browse files

Update Graph::configConstraint and Graph::pathConstraint

parent cf1f8164
No related branches found
No related tags found
No related merge requests found
...@@ -58,17 +58,25 @@ namespace hpp { ...@@ -58,17 +58,25 @@ namespace hpp {
/// \return The initialized projector. /// \return The initialized projector.
ConstraintSetPtr_t configConstraint (const Nodes_t& nodes); ConstraintSetPtr_t configConstraint (const Nodes_t& nodes);
/// Kept for compatibility. Do not use. Use configConstraint(const Edges_t&) instead
/// \param config Configuration that will initialize the projector.
/// \return The initialized constraint.
ConstraintSetPtr_t configConstraint (const Edges_t& edges, ConfigurationIn_t config) __attribute__ ((deprecated));
/// Constraint to project onto the same leaf as config. /// Constraint to project onto the same leaf as config.
/// \param edges a list of edges defining the foliation. /// \param edges a list of edges defining the foliation.
/// \param config Configuration that will initialize the projector. /// \return The constraint.
/// \return The initialized projector. ConstraintSetPtr_t configConstraint (const Edges_t& edges);
ConstraintSetPtr_t configConstraint (const Edges_t& edges, ConfigurationIn_t config);
/// Constraint to project a path. /// Constraint to project a path.
/// \param edges a list of edges defining the foliation. /// \param edges a list of edges defining the foliation.
/// \return The constraint.
ConstraintSetPtr_t pathConstraint (const Edges_t& edges);
/// Kept for compatibility. Do not use. Use pathConstraint(const Edges_t&) instead
/// \param config Configuration that will initialize the constraint. /// \param config Configuration that will initialize the constraint.
/// \return The initialized constraint. /// \return The initialized constraint.
ConstraintSetPtr_t pathConstraint (const Edges_t& edges, ConfigurationIn_t config); ConstraintSetPtr_t pathConstraint (const Edges_t& edges, ConfigurationIn_t config) __attribute__ ((deprecated));
/// Return the NodeSelector with the given name if any, /// Return the NodeSelector with the given name if any,
/// NULL pointer if not found. /// NULL pointer if not found.
......
...@@ -194,6 +194,13 @@ namespace hpp { ...@@ -194,6 +194,13 @@ namespace hpp {
} }
ConstraintSetPtr_t Graph::configConstraint (const Edges_t& edges, ConfigurationIn_t config) ConstraintSetPtr_t Graph::configConstraint (const Edges_t& edges, ConfigurationIn_t config)
{
ConstraintSetPtr_t constraint = configConstraint (edges);
constraint->offsetFromConfig (config);
return constraint;
}
ConstraintSetPtr_t Graph::configConstraint (const Edges_t& edges)
{ {
ConstraintSetPtr_t constraint; ConstraintSetPtr_t constraint;
MapFromEdge::const_iterator it = cfgConstraintSetMapFromEdge_.find (edges); MapFromEdge::const_iterator it = cfgConstraintSetMapFromEdge_.find (edges);
...@@ -220,11 +227,17 @@ namespace hpp { ...@@ -220,11 +227,17 @@ namespace hpp {
constraint = it->second; constraint = it->second;
} }
constraint->offsetFromConfig (config);
return constraint; return constraint;
} }
ConstraintSetPtr_t Graph::pathConstraint (const Edges_t& edges, ConfigurationIn_t config) ConstraintSetPtr_t Graph::pathConstraint (const Edges_t& edges, ConfigurationIn_t config)
{
ConstraintSetPtr_t constraint = pathConstraint (edges);
constraint->offsetFromConfig (config);
return constraint;
}
ConstraintSetPtr_t Graph::pathConstraint (const Edges_t& edges)
{ {
ConstraintSetPtr_t constraint; ConstraintSetPtr_t constraint;
MapFromEdge::const_iterator it = pathConstraintSetMapFromEdge_.find (edges); MapFromEdge::const_iterator it = pathConstraintSetMapFromEdge_.find (edges);
...@@ -247,7 +260,6 @@ namespace hpp { ...@@ -247,7 +260,6 @@ namespace hpp {
constraint = it->second; constraint = it->second;
} }
constraint->offsetFromConfig (config);
return constraint; return constraint;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment