Robotics Library  0.6.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | List of all members
rl::plan::Prm Class Reference

#include <Prm.h>

Inheritance diagram for rl::plan::Prm:
Inheritance graph
[legend]
Collaboration diagram for rl::plan::Prm:
Collaboration graph
[legend]

Classes

struct  CartesianIterator
struct  Compare
struct  Distance
struct  EdgeBundle
struct  GraphBundle
struct  VertexBundle

Public Member Functions

 Prm ()
virtual ~Prm ()
virtual void construct (const ::std::size_t &steps)
virtual ::std::string getName () const
::std::size_t getNumEdges () const
::std::size_t getNumVertices () const
void getPath (VectorList &path)
void reset ()
bool solve ()
- Public Member Functions inherited from rl::plan::Planner
 Planner ()
virtual ~Planner ()
bool verify ()

Public Attributes

::std::size_t degree
::std::size_t k
bool kd
::rl::math::Real radius
Samplersampler
Verifierverifier
- Public Attributes inherited from rl::plan::Planner
::rl::math::Real duration
::rl::math::Vectorgoal
SimpleModelmodel
::rl::math::Vectorstart
Viewerviewer

Protected Types

typedef
::boost::adjacency_list_traits
< ::boost::listS,::boost::listS,::boost::undirectedS,::boost::listS >
::vertex_descriptor 
Vertex
typedef
::boost::adjacency_list
< ::boost::listS,::boost::listS,::boost::undirectedS,
VertexBundle, EdgeBundle,
GraphBundle
Graph
typedef ::std::pair< const
::rl::math::Vector *, Vertex
QueryItem
typedef ::CGAL::Search_traits
< ::rl::math::Real, QueryItem,
const ::rl::math::Real
*, CartesianIterator
SearchTraits
typedef
Orthogonal_k_neighbor_search
< SearchTraits, Distance
NeighborSearch
typedef NeighborSearch::Tree NeighborSearchTree
typedef ::boost::shared_ptr
< NeighborSearchTree
NeighborSearchTreePtr
typedef ::std::vector
< NeighborSearchTreePtr
NearestNeighbors
typedef ::boost::graph_traits
< Graph >::edge_descriptor 
Edge
typedef ::boost::graph_traits
< Graph >::edge_iterator 
EdgeIterator
typedef ::std::pair
< EdgeIterator, EdgeIterator
EdgeIteratorPair
typedef ::boost::graph_traits
< Graph >::vertex_iterator 
VertexIterator
typedef ::std::pair
< VertexIterator,
VertexIterator
VertexIteratorPair
typedef ::boost::property_map
< Graph, void *VertexBundle::* >
::type 
VertexParentMap
typedef ::boost::property_map
< Graph,::std::size_t
VertexBundle::* >::type 
VertexRankMap
typedef ::std::pair< Vertex,::rl::math::RealNeighbor
typedef ::std::priority_queue
< Neighbor,::std::vector
< Neighbor >, Compare
NeighborQueue

Protected Member Functions

Edge addEdge (const Vertex &u, const Vertex &v, const ::rl::math::Real &weight)
void addPoint (NearestNeighbors &nn, const QueryItem &p)
Vertex addVertex (const VectorPtr &q)
void insert (const Vertex &vertex)

Protected Attributes

Vertex begin
::boost::disjoint_sets
< VertexRankMap,
VertexParentMap
ds
Vertex end
Graph graph
- Protected Attributes inherited from rl::plan::Planner
::rl::util::Timer timer

Detailed Description

Probabilistic Roadmap.

Member Typedef Documentation

typedef ::boost::graph_traits< Graph >::edge_descriptor rl::plan::Prm::Edge
protected
typedef ::boost::graph_traits< Graph >::edge_iterator rl::plan::Prm::EdgeIterator
protected
typedef ::std::pair< EdgeIterator, EdgeIterator > rl::plan::Prm::EdgeIteratorPair
protected
typedef ::boost::adjacency_list< ::boost::listS, ::boost::listS, ::boost::undirectedS, VertexBundle, EdgeBundle, GraphBundle > rl::plan::Prm::Graph
protected
typedef ::std::vector< NeighborSearchTreePtr > rl::plan::Prm::NearestNeighbors
protected
typedef ::std::pair< Vertex, ::rl::math::Real > rl::plan::Prm::Neighbor
protected
typedef ::std::priority_queue< Neighbor, ::std::vector< Neighbor >, Compare > rl::plan::Prm::NeighborQueue
protected
typedef NeighborSearch::Tree rl::plan::Prm::NeighborSearchTree
protected
typedef ::boost::shared_ptr< NeighborSearchTree > rl::plan::Prm::NeighborSearchTreePtr
protected
typedef ::std::pair< const ::rl::math::Vector*, Vertex > rl::plan::Prm::QueryItem
protected
typedef ::CGAL::Search_traits< ::rl::math::Real, QueryItem, const ::rl::math::Real*, CartesianIterator > rl::plan::Prm::SearchTraits
protected
typedef ::boost::adjacency_list_traits< ::boost::listS, ::boost::listS, ::boost::undirectedS, ::boost::listS >::vertex_descriptor rl::plan::Prm::Vertex
protected
typedef ::boost::graph_traits< Graph >::vertex_iterator rl::plan::Prm::VertexIterator
protected
typedef ::boost::property_map< Graph, void* VertexBundle::* >::type rl::plan::Prm::VertexParentMap
protected
typedef ::boost::property_map< Graph, ::std::size_t VertexBundle::* >::type rl::plan::Prm::VertexRankMap
protected

Constructor & Destructor Documentation

rl::plan::Prm::Prm ( )
rl::plan::Prm::~Prm ( )
virtual

Member Function Documentation

Prm::Edge rl::plan::Prm::addEdge ( const Vertex u,
const Vertex v,
const ::rl::math::Real weight 
)
protected
void rl::plan::Prm::addPoint ( NearestNeighbors nn,
const QueryItem p 
)
protected
Prm::Vertex rl::plan::Prm::addVertex ( const VectorPtr q)
protected
void rl::plan::Prm::construct ( const ::std::size_t &  steps)
virtual

Reimplemented in rl::plan::PrmUtilityGuided.

std::string rl::plan::Prm::getName ( ) const
virtual

Implements rl::plan::Planner.

Reimplemented in rl::plan::PrmUtilityGuided.

std::size_t rl::plan::Prm::getNumEdges ( ) const
std::size_t rl::plan::Prm::getNumVertices ( ) const
void rl::plan::Prm::getPath ( VectorList path)
virtual

Get solution path.

Precondition
solve()

Implements rl::plan::Planner.

void rl::plan::Prm::insert ( const Vertex vertex)
protected
void rl::plan::Prm::reset ( )
virtual

Reset planner.

Implements rl::plan::Planner.

bool rl::plan::Prm::solve ( )
virtual

Find collision free path.

Implements rl::plan::Planner.

Reimplemented in rl::plan::PrmUtilityGuided.

Member Data Documentation

Vertex rl::plan::Prm::begin
protected
::std::size_t rl::plan::Prm::degree

Maximum degree per vertex.

::boost::disjoint_sets< VertexRankMap, VertexParentMap > rl::plan::Prm::ds
protected
Vertex rl::plan::Prm::end
protected
Graph rl::plan::Prm::graph
protected
::std::size_t rl::plan::Prm::k

Maximum number of tested neighbors.

bool rl::plan::Prm::kd

Use kd-tree for nearest neighbor search instead of brute-force.

::rl::math::Real rl::plan::Prm::radius

Maximum radius for connecting neighbors.

Sampler* rl::plan::Prm::sampler
Verifier* rl::plan::Prm::verifier

The documentation for this class was generated from the following files: