diff --git a/CMakeLists.txt b/CMakeLists.txt index 2872f7af6c35b20a3dcc5f3626d9bcca592a978b..4627f4af10f4cc52c53acdf006a57ced03162dcb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -45,6 +45,7 @@ SET (${PROJECT_NAME}_HEADERS include/hpp/manipulation/axial-handle.hh include/hpp/manipulation/handle.hh include/hpp/manipulation/object.hh + include/hpp/manipulation/problem.hh include/hpp/manipulation/problem-solver.hh include/hpp/manipulation/robot.hh include/hpp/manipulation/manipulation-planner.hh diff --git a/include/hpp/manipulation/problem.hh b/include/hpp/manipulation/problem.hh new file mode 100644 index 0000000000000000000000000000000000000000..8914fe00720bf0de4e83f2f612d8914458fcda44 --- /dev/null +++ b/include/hpp/manipulation/problem.hh @@ -0,0 +1,51 @@ +// Copyright (c) 2014, LAAS-CNRS +// Authors: Joseph Mirabel (joseph.mirabel@laas.fr) +// +// This file is part of hpp-manipulation. +// hpp-manipulation is free software: you can redistribute it +// and/or modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation, either version +// 3 of the License, or (at your option) any later version. +// +// hpp-manipulation is distributed in the hope that it will be +// useful, but WITHOUT ANY WARRANTY; without even the implied warranty +// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// General Lesser Public License for more details. You should have +// received a copy of the GNU Lesser General Public License along with +// hpp-manipulation. If not, see <http://www.gnu.org/licenses/>. + +#include <hpp/core/problem.hh> + +#include "hpp/manipulation/robot.hh" +#include "hpp/manipulation/graph/graph.hh" +#include "hpp/manipulation/fwd.hh" + +namespace hpp { + namespace manipulation { + class HPP_MANIPULATION_DLLAPI Problem : public core::Problem + { + public: + /// Constructor + Problem (RobotPtr_t robot) : core::Problem (robot), + graph_() + { + } + + /// Set the graph of constraints + void constraintGraph (const graph::GraphPtr_t& graph) + { + graph_ = graph; + } + + /// Get the graph of constraints + graph::GraphPtr_t constraintGraph () const + { + return graph_; + } + + private: + /// The graph of constraints + graph::GraphPtr_t graph_; + }; + } // namespace manipulation +} // namespace hpp