hpp::core::SubchainPath Class Reference

Result of the selection of some configuration parameter of an original path. More...

#include <hpp/core/subchain-path.hh>

Inheritance diagram for hpp::core::SubchainPath:
[legend]
Collaboration diagram for hpp::core::SubchainPath:
[legend]

Public Types

typedef Path parent_t
 

Public Member Functions

virtual ~SubchainPath () throw ()
 
virtual PathPtr_t copy () const
 Return a shared pointer to a copy of this. More...
 
virtual PathPtr_t copy (const ConstraintSetPtr_t &constraints) const
 Return a shared pointer to a copy of this and set constraints. More...
 
virtual bool impl_compute (ConfigurationOut_t result, value_type param) const
 Function evaluation without applying constraints. More...
 
Configuration_t initial () const
 Get the initial configuration. More...
 
Configuration_t end () const
 Get the final configuration. More...
 
void dofExtract (ConfigurationIn_t qin, ConfigurationOut_t qout) const
 
- Public Member Functions inherited from hpp::core::Path
virtual ~Path () throw ()
 Destructor. More...
 
template<class T >
boost::shared_ptr< T > as (void)
 Static cast into a derived type. More...
 
template<class T >
boost::shared_ptr< const T > as (void) const
 Static cast into a derived type. More...
 
PathPtr_t extract (const interval_t &subInterval) const throw (projection_error)
 
PathPtr_t extract (const value_type &tmin, const value_type &tmax) const throw (projection_error)
 
virtual PathPtr_t reverse () const
 Reversion of a path. More...
 
Configuration_t operator() (const value_type &time) const HPP_CORE_DEPRECATED
 
Configuration_t operator() (const value_type &time, bool &success) const
 
bool operator() (ConfigurationOut_t result, const value_type &time) const throw ()
 
Configuration_t eval (const value_type &time, bool &success) const
 
bool eval (ConfigurationOut_t result, const value_type &time) const throw ()
 
bool at (const value_type &time, ConfigurationOut_t result) const
 Get the configuration at a parameter without applying the constraints. More...
 
void derivative (vectorOut_t result, const value_type &time, size_type order) const
 Get derivative with respect to parameter at given parameter. More...
 
void velocityBound (vectorOut_t result, const value_type &t0, const value_type &t1) const
 Get an upper bound of the velocity on a sub-interval. More...
 
size_type outputSize () const
 Get size of configuration space. More...
 
size_type outputDerivativeSize () const
 Get size of velocity. More...
 
const interval_ttimeRange () const
 Get interval of definition. More...
 
virtual value_type length () const
 Get length of definition interval. More...
 
const ConstraintSetPtr_tconstraints () const
 Get constraints the path is subject to. More...
 
const interval_tparamRange () const
 Get interval of parameters. More...
 
void timeParameterization (const TimeParameterizationPtr_t &tp, const interval_t &tr)
 Set the time parameterization function. More...
 

Static Public Member Functions

static SubchainPathPtr_t create (const PathPtr_t &original, const segments_t &confIntervals, const segments_t &velIntervals)
 Constructor. More...
 
static SubchainPathPtr_t createCopy (const SubchainPathPtr_t &path)
 
static SubchainPathPtr_t createCopy (const SubchainPathPtr_t &path, const ConstraintSetPtr_t &constraints)
 

Protected Member Functions

virtual std::ostream & print (std::ostream &os) const
 Print path in a stream. More...
 
 SubchainPath (const PathPtr_t &original, const segments_t &confIntervals, const segments_t &velIntervals)
 Constructor. More...
 
 SubchainPath (const SubchainPath &path)
 
 SubchainPath (const SubchainPath &path, const ConstraintSetPtr_t &constraints)
 
void init (SubchainPathPtr_t self)
 
- Protected Member Functions inherited from hpp::core::Path
 Path (const interval_t &interval, size_type outputSize, size_type outputDerivativeSize, const ConstraintSetPtr_t &constraints)
 Constructor. More...
 
 Path (const interval_t &interval, size_type outputSize, size_type outputDerivativeSize)
 Constructor. More...
 
 Path (const Path &path)
 Copy constructor. More...
 
 Path (const Path &path, const ConstraintSetPtr_t &constraints)
 Copy constructor with constraints. More...
 
void init (const PathWkPtr_t &self)
 Store weak pointer to itself. More...
 
void constraints (const ConstraintSetPtr_t &constraint)
 Set the constraints. More...
 
virtual void checkPath () const
 Should be called by child classes after having init. More...
 
void timeRange (const interval_t &timeRange)
 
const TimeParameterizationPtr_ttimeParameterization () const
 
value_type paramLength () const
 
Configuration_t configAtParam (const value_type &param, bool &success) const
 
virtual void impl_derivative (vectorOut_t derivative, const value_type &param, size_type order) const
 Virtual implementation of derivative. More...
 
virtual void impl_velocityBound (vectorOut_t bound, const value_type &param0, const value_type &param1) const
 Virtual implementation of velocityBound. More...
 
virtual PathPtr_t impl_extract (const interval_t &paramInterval) const throw (projection_error)
 Virtual implementation of extract. More...
 

Additional Inherited Members

- Protected Attributes inherited from hpp::core::Path
interval_t paramRange_
 Interval of parameters. More...
 

Detailed Description

Result of the selection of some configuration parameter of an original path.

Note
Decorator design pattern
Todo:
the configuration parameter cannot be rearranged.

Member Typedef Documentation

◆ parent_t

Constructor & Destructor Documentation

◆ ~SubchainPath()

virtual hpp::core::SubchainPath::~SubchainPath ( )
throw (
)
inlinevirtual

◆ SubchainPath() [1/3]

hpp::core::SubchainPath::SubchainPath ( const PathPtr_t original,
const segments_t confIntervals,
const segments_t velIntervals 
)
inlineprotected

Constructor.

Parameters
originalPath to extract,
confIntervalsof the configuration parameters to be extracted
velIntervalsof the configuration parameters to be extracted

Referenced by create(), and createCopy().

◆ SubchainPath() [2/3]

hpp::core::SubchainPath::SubchainPath ( const SubchainPath path)
inlineprotected

◆ SubchainPath() [3/3]

hpp::core::SubchainPath::SubchainPath ( const SubchainPath path,
const ConstraintSetPtr_t constraints 
)
inlineprotected

Member Function Documentation

◆ copy() [1/2]

virtual PathPtr_t hpp::core::SubchainPath::copy ( ) const
inlinevirtual

Return a shared pointer to a copy of this.

Implements hpp::core::Path.

References createCopy().

◆ copy() [2/2]

virtual PathPtr_t hpp::core::SubchainPath::copy ( const ConstraintSetPtr_t constraints) const
inlinevirtual

Return a shared pointer to a copy of this and set constraints.

Parameters
constraintsconstraints to apply to the copy
Precondition
*this should not have constraints.

Implements hpp::core::Path.

References hpp::core::Path::constraints(), and createCopy().

◆ create()

static SubchainPathPtr_t hpp::core::SubchainPath::create ( const PathPtr_t original,
const segments_t confIntervals,
const segments_t velIntervals 
)
inlinestatic

Constructor.

Parameters
originalPath to extract,
confIntervalsof the configuration parameters to be extracted
velIntervalsof the configuration parameters to be extracted

References init(), and SubchainPath().

◆ createCopy() [1/2]

static SubchainPathPtr_t hpp::core::SubchainPath::createCopy ( const SubchainPathPtr_t path)
inlinestatic

References init(), and SubchainPath().

Referenced by copy().

◆ createCopy() [2/2]

static SubchainPathPtr_t hpp::core::SubchainPath::createCopy ( const SubchainPathPtr_t path,
const ConstraintSetPtr_t constraints 
)
inlinestatic

References init(), and SubchainPath().

◆ dofExtract()

void hpp::core::SubchainPath::dofExtract ( ConfigurationIn_t  qin,
ConfigurationOut_t  qout 
) const
inline

Referenced by end(), impl_compute(), and initial().

◆ end()

Configuration_t hpp::core::SubchainPath::end ( ) const
inlinevirtual

Get the final configuration.

Implements hpp::core::Path.

References dofExtract(), and hpp::core::Path::outputSize().

◆ impl_compute()

virtual bool hpp::core::SubchainPath::impl_compute ( ConfigurationOut_t  configuration,
value_type  param 
) const
inlinevirtual

Function evaluation without applying constraints.

Returns
true if everything went good.

Implements hpp::core::Path.

References dofExtract().

◆ init()

void hpp::core::SubchainPath::init ( SubchainPathPtr_t  self)
inlineprotected

References hpp::core::Path::init().

Referenced by create(), and createCopy().

◆ initial()

Configuration_t hpp::core::SubchainPath::initial ( ) const
inlinevirtual

Get the initial configuration.

Implements hpp::core::Path.

References dofExtract(), and hpp::core::Path::outputSize().

◆ print()

virtual std::ostream& hpp::core::SubchainPath::print ( std::ostream &  os) const
inlineprotectedvirtual

Print path in a stream.

Reimplemented from hpp::core::Path.