#include <string>
#include <algorithm>
#include <boost/tuple/tuple.hpp>
#include "hpp/manipulation/config.hh"
#include "hpp/manipulation/fwd.hh"
#include "hpp/manipulation/graph/fwd.hh"
Namespaces | |
hpp | |
Copyright (c) 2014 CNRS Authors: Florent Lamiraux, Joseph Mirabel. | |
hpp::manipulation | |
hpp::manipulation::graph | |
hpp::manipulation::graph::helper | |
Typedefs | |
typedef std::vector< Rule > | hpp::manipulation::graph::helper::Rules_t |
typedef boost::tuple< ImplicitPtr_t, ImplicitPtr_t, LockedJoints_t > | hpp::manipulation::graph::helper::PlacementConstraint_t |
typedef std::vector< HandlePtr_t > | hpp::manipulation::graph::helper::Handles_t |
typedef std::vector< GripperPtr_t > | hpp::manipulation::graph::helper::Grippers_t |
typedef boost::tuple< PlacementConstraint_t, Handles_t, std::size_t > | hpp::manipulation::graph::helper::Object_t |
Tuple representing an object as follows: More... | |
typedef std::vector< Object_t > | hpp::manipulation::graph::helper::Objects_t |
Enumerations | |
enum | hpp::manipulation::graph::helper::GraspingCase { hpp::manipulation::graph::helper::NoGrasp = 1 << 0, hpp::manipulation::graph::helper::GraspOnly = 1 << 1, hpp::manipulation::graph::helper::WithPreGrasp = 1 << 2 } |
enum | hpp::manipulation::graph::helper::PlacementCase { hpp::manipulation::graph::helper::NoPlace = 1 << 3, hpp::manipulation::graph::helper::PlaceOnly = 1 << 4, hpp::manipulation::graph::helper::WithPrePlace = 1 << 5 } |
Functions | |
template<int gCase> | |
Edges_t | hpp::manipulation::graph::helper::createEdges (const std::string &forwName, const std::string &backName, const StatePtr_t &from, const StatePtr_t &to, const size_type &wForw, const size_type &wBack, const FoliatedManifold &grasp, const FoliatedManifold &pregrasp, const FoliatedManifold &place, const FoliatedManifold &preplace, const bool levelSetGrasp, const bool levelSetPlace, const FoliatedManifold &submanifoldDef=FoliatedManifold()) |
Create edges according to the case. More... | |
EdgePtr_t | hpp::manipulation::graph::helper::createLoopEdge (const std::string &loopName, const StatePtr_t &state, const size_type &w, const bool levelSet, const FoliatedManifold &submanifoldDef=FoliatedManifold()) |
void | hpp::manipulation::graph::helper::graspManifold (const GripperPtr_t &gripper, const HandlePtr_t &handle, FoliatedManifold &grasp, FoliatedManifold &pregrasp) |
Create a waypoint edge taking into account: More... | |
void | hpp::manipulation::graph::helper::strictPlacementManifold (const ImplicitPtr_t placement, const ImplicitPtr_t preplacement, const ImplicitPtr_t placementComplement, FoliatedManifold &place, FoliatedManifold &preplace) |
The placement foliation constraint is built using hpp::constraints::ConvexShapeMatcherComplement. More... | |
void | hpp::manipulation::graph::helper::relaxedPlacementManifold (const ImplicitPtr_t placement, const ImplicitPtr_t preplacement, const LockedJoints_t objectLocks, FoliatedManifold &place, FoliatedManifold &preplace) |
The placement foliation constraint is built locked joints It is faster than strictPlacementManifold but the foliation parametrisation is redundant. More... | |
void | hpp::manipulation::graph::helper::graphBuilder (const ProblemSolverPtr_t &ps, const Objects_t &objects, const Grippers_t &grippers, GraphPtr_t graph, const Rules_t &rules=Rules_t()) |
Fill a Graph. More... | |
GraphPtr_t | hpp::manipulation::graph::helper::graphBuilder (const ProblemSolverPtr_t &ps, const std::string &graphName, const StringList_t &griNames, const std::list< ObjectDef_t > &objs, const StringList_t &envNames, const Rules_t &rules, const value_type &prePlaceWidth=0.05) |