mc_tvm::JointsSelectorFunction Class Reference

#include <mc_tvm/JointsSelectorFunction.h>

Inheritance diagram for mc_tvm::JointsSelectorFunction:
Collaboration diagram for mc_tvm::JointsSelectorFunction:

Public Types

using Function = tvm::function::abstract::Function
 

Public Member Functions

const Eigen::VectorXd & value () const override
 
const Eigen::VectorXd & velocity () const override
 
const Eigen::VectorXd & normalAcceleration () const override
 

Static Public Member Functions

static std::unique_ptr< JointsSelectorFunctionActiveJoints (Function *f, const mc_rbdyn::Robot &robot, const std::vector< std::string > &activeJoints)
 
static std::unique_ptr< JointsSelectorFunctionInactiveJoints (Function *f, const mc_rbdyn::Robot &robot, const std::vector< std::string > &inactiveJoints)
 

Protected Member Functions

 JointsSelectorFunction (Function *f, tvm::VariablePtr variable, const std::vector< std::pair< Eigen::DenseIndex, Eigen::DenseIndex >> &activeIndex)
 
void updateJacobian ()
 
void updateJDot ()
 

Protected Attributes

Functionf_
 
tvm::VariablePtr variable_
 
std::vector< std::pair< Eigen::DenseIndex, Eigen::DenseIndex > > activeIndex_
 

Detailed Description

This class implements joints' selection on a given fucntion

Member Typedef Documentation

◆ Function

using mc_tvm::JointsSelectorFunction::Function = tvm::function::abstract::Function

Constructor & Destructor Documentation

◆ JointsSelectorFunction()

mc_tvm::JointsSelectorFunction::JointsSelectorFunction ( Function f,
tvm::VariablePtr  variable,
const std::vector< std::pair< Eigen::DenseIndex, Eigen::DenseIndex >> &  activeIndex 
)
protected

Constructor

Parameters
fFunction selected by this JointsSelector
robotRobot controlled by f
fbActiveTrue if the selected joints include the floating-base
activeIndexFor regular joints selected by this JointsSelector, this iss a list of (start, size) pair corresponding to the list of joints

Member Function Documentation

◆ ActiveJoints()

static std::unique_ptr<JointsSelectorFunction> mc_tvm::JointsSelectorFunction::ActiveJoints ( Function f,
const mc_rbdyn::Robot robot,
const std::vector< std::string > &  activeJoints 
)
static

Construct a JointsSelector from a vector of active joints

Parameters
fFunction selected by this JointsSelector
robotRobot controlled by f
activeJointsJoints active in this selector
Exceptions
Ifdoes not depend on robot or any joint in activeJoints is not part of robot

◆ InactiveJoints()

static std::unique_ptr<JointsSelectorFunction> mc_tvm::JointsSelectorFunction::InactiveJoints ( Function f,
const mc_rbdyn::Robot robot,
const std::vector< std::string > &  inactiveJoints 
)
static

Construct a JointsSelector from a vector of inactive joints

Parameters
fFunction selected by this JointsSelector
robotRobot controlled by f
inactiveJointsJoints not active in this selector
Exceptions
Ifdoes not depend on robot or any joint in activeJoints is not part of robot

◆ normalAcceleration()

const Eigen::VectorXd& mc_tvm::JointsSelectorFunction::normalAcceleration ( ) const
inlineoverride

◆ updateJacobian()

void mc_tvm::JointsSelectorFunction::updateJacobian ( )
protected

◆ updateJDot()

void mc_tvm::JointsSelectorFunction::updateJDot ( )
protected

◆ value()

const Eigen::VectorXd& mc_tvm::JointsSelectorFunction::value ( ) const
inlineoverride

◆ velocity()

const Eigen::VectorXd& mc_tvm::JointsSelectorFunction::velocity ( ) const
inlineoverride

Member Data Documentation

◆ activeIndex_

std::vector<std::pair<Eigen::DenseIndex, Eigen::DenseIndex> > mc_tvm::JointsSelectorFunction::activeIndex_
protected

◆ f_

Function* mc_tvm::JointsSelectorFunction::f_
protected

◆ variable_

tvm::VariablePtr mc_tvm::JointsSelectorFunction::variable_
protected

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