hpp::core::Path Class Reference

Abstraction of paths: mapping from time to configuration space. More...

#include <hpp/core/path.hh>

Inheritance diagram for hpp::core::Path:

List of all members.

Public Member Functions

Configuration_t operator() (const value_type &t) const throw ()
Configuration_t operator() (const value_type &t, bool &success) const throw ()
bool operator() (ConfigurationOut_t result, const value_type &t) const throw ()
size_type outputSize () const
 Get size of configuration space.
size_type outputDerivativeSize () const
 Get size of velocity.
const interval_ttimeRange () const
 Get interval of definition.
value_type length () const
 Get length of definition interval.
virtual Configuration_t initial () const =0
 Get the initial configuration.
virtual Configuration_t end () const =0
 Get the final configuration.
Construction, destruction, copy
virtual ~Path () throw ()
 Destructor.
virtual PathPtr_t copy () const =0
 Return a shared pointer to a copy of this.
template<class T >
boost::shared_ptr< T > as (void)
 Static cast into a derived type.
template<class T >
boost::shared_ptr< const T > as (void) const
 Static cast into a derived type.
virtual PathPtr_t extract (const interval_t &subInterval) const
 Extraction/Reversion of a sub-path.
virtual PathPtr_t reverse () const
 Reversion of a path.
Constraints
const ConstraintSetPtr_tconstraints () const
 Get constraints the path is subject to.
void constraints (const ConstraintSetPtr_t &constraints)
 Set constraints the path is subject to.

Protected Member Functions

virtual std::ostream & print (std::ostream &os) const =0
 Print path in a stream.
 Path (const interval_t &interval, size_type outputSize, size_type outputDerivativeSize)
 Constructor.
 Path (const interval_t &interval, size_type outputSize, size_type outputDerivativeSize, const ConstraintSetPtr_t &constraints)
 Constructor.
 Path (const Path &path)
 Copy constructor.
void init (const PathPtr_t &self)
 Store weak pointer to itself.
virtual bool impl_compute (ConfigurationOut_t configuration, value_type t) const =0
 Function evaluation.

Protected Attributes

interval_t timeRange_
 Interval of definition.

Friends

std::ostream & operator<< (std::ostream &os, const Path &path)

Detailed Description

Abstraction of paths: mapping from time to configuration space.


Constructor & Destructor Documentation

virtual hpp::core::Path::~Path ( ) throw () [inline, virtual]

Destructor.

hpp::core::Path::Path ( const interval_t interval,
size_type  outputSize,
size_type  outputDerivativeSize 
) [inline, protected]

Constructor.

Parameters:
intervalinterval of definition of the path,
outputSizesize of the output configuration,
outputDerivativeSizenumber of degrees of freedom of the underlying robot
hpp::core::Path::Path ( const interval_t interval,
size_type  outputSize,
size_type  outputDerivativeSize,
const ConstraintSetPtr_t constraints 
) [inline, protected]

Constructor.

Parameters:
intervalinterval of definition of the path,
outputSizesize of the output configuration,
outputDerivativeSizenumber of degrees of freedom of the underlying robot
constraintsconstraints the set is subject to, constraints are solved at each evaluation of the output configuration.
hpp::core::Path::Path ( const Path path) [inline, protected]

Copy constructor.


Member Function Documentation

template<class T >
boost::shared_ptr<T> hpp::core::Path::as ( void  ) [inline]

Static cast into a derived type.

template<class T >
boost::shared_ptr<const T> hpp::core::Path::as ( void  ) const [inline]

Static cast into a derived type.

const ConstraintSetPtr_t& hpp::core::Path::constraints ( ) const [inline]

Get constraints the path is subject to.

void hpp::core::Path::constraints ( const ConstraintSetPtr_t constraints) [inline]

Set constraints the path is subject to.

virtual PathPtr_t hpp::core::Path::copy ( ) const [pure virtual]

Return a shared pointer to a copy of this.

Implemented in hpp::core::pathOptimization::PartialSplinePath, hpp::core::StraightPath, and hpp::core::PathVector.

virtual Configuration_t hpp::core::Path::end ( ) const [pure virtual]

Get the final configuration.

Implemented in hpp::core::StraightPath, and hpp::core::PathVector.

virtual PathPtr_t hpp::core::Path::extract ( const interval_t subInterval) const [virtual]

Extraction/Reversion of a sub-path.

Parameters:
subIntervalinterval of definition of the extract path If upper bound of subInterval is smaller than lower bound, result is reversed.

Reimplemented in hpp::core::PathVector, and hpp::core::StraightPath.

virtual bool hpp::core::Path::impl_compute ( ConfigurationOut_t  configuration,
value_type  t 
) const [protected, pure virtual]

Function evaluation.

Returns:
true if everything went good.

Implemented in hpp::core::PathVector, hpp::core::StraightPath, and hpp::core::pathOptimization::PartialSplinePath.

void hpp::core::Path::init ( const PathPtr_t self) [inline, protected]

Store weak pointer to itself.

should be called at construction of derived class instances

virtual Configuration_t hpp::core::Path::initial ( ) const [pure virtual]

Get the initial configuration.

Implemented in hpp::core::StraightPath, and hpp::core::PathVector.

value_type hpp::core::Path::length ( ) const [inline]

Get length of definition interval.

Configuration_t hpp::core::Path::operator() ( const value_type t) const throw () [inline]
Configuration_t hpp::core::Path::operator() ( const value_type t,
bool &  success 
) const throw () [inline]
bool hpp::core::Path::operator() ( ConfigurationOut_t  result,
const value_type t 
) const throw () [inline]
size_type hpp::core::Path::outputDerivativeSize ( ) const [inline]

Get size of velocity.

size_type hpp::core::Path::outputSize ( ) const [inline]

Get size of configuration space.

virtual std::ostream& hpp::core::Path::print ( std::ostream &  os) const [protected, pure virtual]
virtual PathPtr_t hpp::core::Path::reverse ( ) const [virtual]

Reversion of a path.

Returns:
a new path that is this one reversed.
const interval_t& hpp::core::Path::timeRange ( ) const [inline]

Get interval of definition.


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const Path path 
) [friend]

Member Data Documentation

Interval of definition.

Referenced by hpp::core::PathVector::PathVector().