diff --git a/CMakeLists.txt b/CMakeLists.txt index 37b2abe1..aeabfdbe 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -100,7 +100,6 @@ add_project_dependency(hpp-util REQUIRED) add_project_dependency(hpp-pinocchio REQUIRED) add_project_dependency(hpp-constraints REQUIRED) add_project_dependency(hpp-core REQUIRED) -add_project_dependency(hpp-corbaserver REQUIRED) add_project_dependency(hpp-manipulation REQUIRED) add_project_dependency(hpp-manipulation-urdf REQUIRED) diff --git a/include/pyhpp/corbaserver/fwd.hh b/include/pyhpp/corbaserver/fwd.hh deleted file mode 100644 index 28357e67..00000000 --- a/include/pyhpp/corbaserver/fwd.hh +++ /dev/null @@ -1,45 +0,0 @@ -// -// Copyright (c) 2018 CNRS -// Authors: Joseph Mirabel -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: - -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. - -// 2. Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. - -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -// COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED -// OF THE POSSIBILITY OF SUCH DAMAGE. - -#ifndef PYHPP_CORBASERVER_FWD_HH -#define PYHPP_CORBASERVER_FWD_HH - -#include - -namespace pyhpp { -namespace corbaserver { -void exposeServer(); -// void exposeProblemSolverMap(); -namespace wholebodyStep { -void exposeServer(); -} -} // namespace corbaserver -} // namespace pyhpp - -#endif // PYHPP_CORBASERVER_FWD_HH diff --git a/include/pyhpp/core/fwd.hh b/include/pyhpp/core/fwd.hh index 4204a2d2..64cc175c 100644 --- a/include/pyhpp/core/fwd.hh +++ b/include/pyhpp/core/fwd.hh @@ -58,7 +58,6 @@ void exposePathPlanner(); void exposeParameter(); void exposeProblem(); -void exposeProblemSolver(); // forward declaration of some classes class PathPlanner; diff --git a/package.xml b/package.xml index bea53e45..cb904b19 100644 --- a/package.xml +++ b/package.xml @@ -28,7 +28,4 @@ hpp-core hpp-core hpp-core - hpp-corbaserver - hpp-corbaserver - hpp-corbaserver diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index eae87840..b45a2fb2 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -121,7 +121,6 @@ add_python_library( pyhpp/core/problem-target.cc pyhpp/core/parameter.cc pyhpp/core/problem.cc - pyhpp/core/problem-solver.cc pyhpp/core/bindings.cc LINK_LIBRARIES hpp-core::hpp-core) @@ -145,10 +144,6 @@ add_python_library( pyhpp/core/path_optimization/spline-gradient-based-abstract.cc pyhpp/core/path_optimization/bindings.cc LINK_LIBRARIES hpp-core::hpp-core) -add_python_library( - pyhpp/corbaserver FILES pyhpp/corbaserver/bindings.cc - pyhpp/corbaserver/server.cc LINK_LIBRARIES hpp-corbaserver::hpp-corbaserver) - add_python_library( pyhpp/manipulation FILES diff --git a/src/pyhpp/corbaserver/bindings.cc b/src/pyhpp/corbaserver/bindings.cc deleted file mode 100644 index a6cff2e7..00000000 --- a/src/pyhpp/corbaserver/bindings.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// Copyright (c) 2018 CNRS -// Authors: Joseph Mirabel -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: - -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. - -// 2. Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. - -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -// COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED -// OF THE POSSIBILITY OF SUCH DAMAGE. - -#include -#include -#include - -BOOST_PYTHON_MODULE(bindings) { - INIT_PYHPP_MODULE; - - boost::python::import("pyhpp.core"); - - pyhpp::corbaserver::exposeServer(); -} diff --git a/src/pyhpp/corbaserver/server.cc b/src/pyhpp/corbaserver/server.cc deleted file mode 100644 index c732982a..00000000 --- a/src/pyhpp/corbaserver/server.cc +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright (c) 2018, Joseph Mirabel -// Authors: Joseph Mirabel (joseph.mirabel@laas.fr) -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: - -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. - -// 2. Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. - -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -// COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED -// OF THE POSSIBILITY OF SUCH DAMAGE. - -#include -#include -#include -#include -#include - -using namespace boost::python; - -namespace pyhpp { -namespace corbaserver { -using hpp::core::ProblemSolverPtr_t; -using namespace hpp::corbaServer; - -struct SWrapper { - static Server* init1(ProblemSolverPtr_t ps, bool multithread = false) { - return new Server(ps, 0, NULL, multithread); - } - static Server* init2(ProblemSolverPtr_t ps, const char* name, - bool multithread = false) { - const char** argv = new const char*[2]; - const char* arg0 = "--name"; - argv[0] = arg0; - argv[1] = name; - Server* server = new Server(ps, 2, argv, multithread); - delete[] argv; - return server; - } -}; - -void exposeServer() { - class_("Server", init()) - .def("__init__", make_constructor(&SWrapper::init1)) - .def("__init__", make_constructor(&SWrapper::init2)) - .def("initialize", &Server::initialize) - .PYHPP_DEFINE_METHOD(Server, startCorbaServer) - .PYHPP_DEFINE_METHOD(Server, processRequest) - .PYHPP_DEFINE_METHOD_INTERNAL_REF(Server, mainContextId); -} -} // namespace corbaserver -} // namespace pyhpp diff --git a/src/pyhpp/corbaserver/wholebodyStep/bindings.cc b/src/pyhpp/corbaserver/wholebodyStep/bindings.cc deleted file mode 100644 index daa8d9e1..00000000 --- a/src/pyhpp/corbaserver/wholebodyStep/bindings.cc +++ /dev/null @@ -1,41 +0,0 @@ -// -// Copyright (c) 2018 CNRS -// Authors: Joseph Mirabel -// -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: - -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. - -// 2. Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. - -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -// COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED -// OF THE POSSIBILITY OF SUCH DAMAGE. - -#include -#include -#include - -BOOST_PYTHON_MODULE(bindings) { - INIT_PYHPP_MODULE; - - boost::python::import("pyhpp.corbaserver"); - - pyhpp::corbaserver::wholebodyStep::exposeServer(); -} diff --git a/src/pyhpp/corbaserver/wholebodyStep/server.cc b/src/pyhpp/corbaserver/wholebodyStep/server.cc deleted file mode 100644 index 46c6b159..00000000 --- a/src/pyhpp/corbaserver/wholebodyStep/server.cc +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright (c) 2018, Joseph Mirabel -// Authors: Joseph Mirabel (joseph.mirabel@laas.fr) -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: - -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. - -// 2. Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. - -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -// COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED -// OF THE POSSIBILITY OF SUCH DAMAGE. - -#include -#include -#include -#include -#include -#include - -using namespace boost::python; - -namespace pyhpp { -namespace corbaserver { -namespace wholebodyStep { -typedef hpp::corbaServer::Server CorbaServer; -typedef hpp::wholebodyStep::Server WholebodyServer; - -struct SWrapper { - static WholebodyServer* init(CorbaServer* server, bool multithread = false) { - WholebodyServer* s = new WholebodyServer(0, NULL, multithread); - s->setProblemSolverMap(server->problemSolverMap()); - return s; - } - static void startCorbaServer(WholebodyServer* wbs, - const CorbaServer* server) { - wbs->startCorbaServer(server->mainContextId(), "corbaserver", - "wholebodyStep", "problem"); - } -}; - -void exposeServer() { - class_("Server", no_init) - .def("__init__", make_constructor(&SWrapper::init)) - .PYHPP_DEFINE_METHOD(SWrapper, startCorbaServer); -} -} // namespace wholebodyStep -} // namespace corbaserver -} // namespace pyhpp diff --git a/src/pyhpp/core/bindings.cc b/src/pyhpp/core/bindings.cc index 8079a45b..3646a57f 100644 --- a/src/pyhpp/core/bindings.cc +++ b/src/pyhpp/core/bindings.cc @@ -44,7 +44,6 @@ BOOST_PYTHON_MODULE(bindings) { pyhpp::core::exposeParameter(); pyhpp::core::exposeProblem(); - pyhpp::core::exposeProblemSolver(); pyhpp::core::exposeConfigValidation(); pyhpp::core::exposeConfigurationShooter(); diff --git a/src/pyhpp/core/problem-solver.cc b/src/pyhpp/core/problem-solver.cc deleted file mode 100644 index c025c5a4..00000000 --- a/src/pyhpp/core/problem-solver.cc +++ /dev/null @@ -1,230 +0,0 @@ -// -// Copyright (c) 2018, Joseph Mirabel -// Authors: Joseph Mirabel (joseph.mirabel@laas.fr) -// -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: - -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. - -// 2. Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following -// disclaimer in the documentation and/or other materials provided -// with the distribution. - -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS -// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE -// COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED -// OF THE POSSIBILITY OF SUCH DAMAGE. - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -// DocNamespace(hpp::core) - -using namespace boost::python; - -#define PYHPP_PROBLEMSOLVER_SELECT_TYPE(type) \ - def(#type "Type", \ - static_cast( \ - &ProblemSolver::type##Type), \ - return_value_policy()) \ - .def(#type "Type", \ - static_cast( \ - &ProblemSolver::type##Type)) - -#define PYHPP_PROBLEMSOLVER_CONTAINER(name) \ - def_readwrite(#name, &ProblemSolver::name) - -namespace pyhpp { -namespace core { -using namespace hpp::core; - -// static list goalConfigs(ProblemSolver& ps) { -// const Configurations_t cfgs = ps.goalConfigs(); -// list ret; -// for (std::size_t i = 0; i < cfgs.size(); ++i) ret.append(*cfgs[i]); -// return ret; -// } -static PathVectorPtr_t path(ProblemSolver& ps, const std::size_t& i) { - if (i > ps.paths().size()) throw std::invalid_argument("Out of range"); - return ps.paths()[i]; -} - -template > -struct Builder { - Builder(PyObject* _callable) : callable(_callable) { incref(callable); } - - ~Builder() { decref(callable); } - - static TypePtr_t call2(PyObject* c, const hpp::core::ProblemConstPtr_t& p) { - object obj = call(c, p); - TypePtr_t ptr = extract(obj); - return ptr; - } - - template - static void add_to_container(hpp::core::Container& c, - const std::string& key, PyObject* callable) { - // TODO check if incref is needed - // incref (callable); - c.add(key, T(boost::bind(&Builder::call2, callable, - boost::placeholders::_1))); - } - - PyObject* callable; -}; - -struct NotABuilder { - template - static void add_to_container(hpp::core::Container& c, - const std::string& key, const T& value) { - c.add(key, value); - } -}; - -/// \tparam Builder_t void means not a Builder. -template -struct exposeContainer { - static void run(const char* name) { - typedef hpp::core::Container C_t; - class_(name, no_init) - .PYHPP_DEFINE_METHOD(C_t, erase) - .PYHPP_DEFINE_METHOD(C_t, clear) - .def("add", &Builder_t::template add_to_container) - .PYHPP_DEFINE_METHOD(C_t, has) - // .PYHPP_DEFINE_METHOD (C_t, get) - .def( - "__getitem__", - static_cast( - &C_t::get), - return_internal_reference<>()) - // .PYHPP_DEFINE_METHOD (C_t, getKeys) - .def("keys", &C_t::template getKeys >); - } -}; - -void exposeProblemSolver() { - // DocClass (ProblemSolver) - using namespace hpp::core; - class_("ProblemSolver", no_init) - .def("create", &ProblemSolver::create, - return_value_policy(), DocClassMethod(create)) - .staticmethod("create") - .def("problem", - static_cast( - &ProblemSolver::problem), - return_value_policy()) - // .def("initConfig", static_cast(&ProblemSolver::initConfig), - // return_internal_reference<>()) - .def("path", path) - .def("initConfig", - static_cast( - &ProblemSolver::initConfig), - return_internal_reference<>()) - .def("initConfig", - static_cast( - &ProblemSolver::initConfig)) - // .PYHPP_DEFINE_METHOD2(ProblemSolver, goalConfigs, - // DocClassMethod(goalConfigs)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, addGoalConfig, - DocClassMethod(addGoalConfig)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, resetGoalConfigs, - DocClassMethod(resetGoalConfigs)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, resetProblem, - DocClassMethod(resetProblem)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, resetRoadmap, - DocClassMethod(resetRoadmap)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, createPathOptimizers, - DocClassMethod(createPathOptimizers)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, prepareSolveStepByStep, - DocClassMethod(prepareSolveStepByStep)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, executeOneStep, - DocClassMethod(executeOneStep)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, finishSolveStepByStep, - DocClassMethod(finishSolveStepByStep)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, solve, DocClassMethod(solve)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, optimizePath, - DocClassMethod(optimizePath)) - - .PYHPP_DEFINE_METHOD2(ProblemSolver, addPath, DocClassMethod(addPath)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, erasePath, DocClassMethod(erasePath)) - .PYHPP_DEFINE_METHOD_INTERNAL_REF(ProblemSolver, paths) - .PYHPP_DEFINE_METHOD2(ProblemSolver, createRobot, - DocClassMethod(createRobot)) - .PYHPP_DEFINE_GETTER_SETTER_INTERNAL_REF(ProblemSolver, robot, - const DevicePtr_t&) - .def("addObstacle", - static_cast( - &ProblemSolver::addObstacle), - DocClassMethod(addObstacle)) - - .PYHPP_PROBLEMSOLVER_SELECT_TYPE(robot) - .PYHPP_PROBLEMSOLVER_SELECT_TYPE(pathPlanner) - .PYHPP_DEFINE_METHOD_INTERNAL_REF(ProblemSolver, pathPlanner) - .PYHPP_PROBLEMSOLVER_SELECT_TYPE(distance) - .PYHPP_PROBLEMSOLVER_SELECT_TYPE(steeringMethod) - .PYHPP_PROBLEMSOLVER_SELECT_TYPE(configurationShooter) - .def("pathValidationType", static_cast( - &ProblemSolver::pathValidationType)) - .def("pathProjectorType", static_cast( - &ProblemSolver::pathProjectorType)) - - .PYHPP_DEFINE_METHOD2(ProblemSolver, addConfigValidation, - DocClassMethod(addConfigValidation)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, configValidationTypes, - DocClassMethod(configValidationTypes)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, clearConfigValidations, - DocClassMethod(clearConfigValidations)) - - .PYHPP_DEFINE_METHOD2(ProblemSolver, addPathOptimizer, - DocClassMethod(addPathOptimizer)) - .PYHPP_DEFINE_METHOD2(ProblemSolver, clearPathOptimizers, - DocClassMethod(clearPathOptimizers)) - //.PYHPP_DEFINE_METHOD_INTERNAL_REF(ProblemSolver, - // pathOptimizer) - - // .PYHPP_PROBLEMSOLVER_CONTAINER(robots) - .PYHPP_PROBLEMSOLVER_CONTAINER(pathPlanners) - .PYHPP_PROBLEMSOLVER_CONTAINER(pathOptimizers) - - .PYHPP_DEFINE_GETTER_SETTER(ProblemSolver, maxIterProjection, size_type) - .PYHPP_DEFINE_GETTER_SETTER(ProblemSolver, maxIterPathPlanning, size_type) - // .PYHPP_DEFINE_GETTER_SETTER (ProblemSolver, errorThreshold , - // value_type) - .def("errorThreshold", static_cast( - &ProblemSolver::errorThreshold)) - .def("errorThreshold", - static_cast( - &ProblemSolver::errorThreshold)); - - // exposeContainer(); - exposeContainer::run("PathPlannerContainer"); - exposeContainer >::run( - "PathOptimizerContainer"); -} -} // namespace core -} // namespace pyhpp diff --git a/src/pyhpp/manipulation/constraint_graph_factory.py b/src/pyhpp/manipulation/constraint_graph_factory.py index c14d643f..1e537dbe 100644 --- a/src/pyhpp/manipulation/constraint_graph_factory.py +++ b/src/pyhpp/manipulation/constraint_graph_factory.py @@ -57,7 +57,7 @@ def __init__(self, grasps=[], pregrasps=[], numConstraints=[], lockedJoints=[]): warn( "argument lockedJoints in constructor of class " - + "hpp.corbaserver.manipulation.constraints.Constraints " + + "pyhpp.manipulation.constraint_graph_factory.Constraints " + "is deprecated. Locked joints are handled as numerical " + "constraints." )