Go to the documentation of this file.
14 #include <Tasks/QPSolver.h>
46 const tasks::qp::SolverData & data)
override;
49 const std::vector<rbd::MultiBodyConfig> & mbcs,
50 const tasks::qp::SolverData & data)
override;
52 inline const Eigen::MatrixXd &
AInEq()
const override {
return A_; }
54 inline int maxInEq()
const override {
return static_cast<int>(descs_.size()); }
56 inline std::string
nameInEq()
const override {
return name_; }
58 inline const Eigen::VectorXd &
bInEq()
const override {
return b_; }
60 std::string
descInEq(
const std::vector<rbd::MultiBody> & mbs,
int i)
override;
68 Eigen::VectorXd b_cst_;
91 std::vector<Desc> descs_;
102 unsigned int robotIndex,
106 void addToSolverImpl(
QPSolver & solver)
override;
108 void removeFromSolverImpl(
QPSolver & solver)
override;
Definition: CompoundJointConstraint.h:30
Definition: CompoundJointConstraintDescription.h:23
MC_SOLVER_DLLAPI void addConstraint(const mc_rbdyn::Robots &robots, unsigned int rIndex, const CompoundJointConstraintDescription &desc)
std::vector< CompoundJointConstraintDescription, Eigen::aligned_allocator< CompoundJointConstraintDescription > > CompoundJointConstraintDescriptionVector
Definition: CompoundJointConstraintDescription.h:33
Definition: QPSolver.h:85
int maxInEq() const override
Definition: CompoundJointConstraint.h:54
const Eigen::VectorXd & bInEq() const override
Definition: CompoundJointConstraint.h:58
This class is a basis to wrap Constraint functions from Tasks. The aim of such wrappers should be two...
Definition: ConstraintSet.h:20
MC_SOLVER_DLLAPI void update(const std::vector< rbd::MultiBody > &mbs, const std::vector< rbd::MultiBodyConfig > &mbcs, const tasks::qp::SolverData &data) override
Definition: CompoundJointConstraint.h:97
std::unique_ptr< void, void(*)(void *)> void_ptr
Definition: void_ptr.h:14
std::string nameInEq() const override
Definition: CompoundJointConstraint.h:56
mc_rbdyn::CompoundJointConstraintDescriptionVector CompoundJointConstraintDescriptionVector
Definition: CompoundJointConstraint.h:20
const Eigen::MatrixXd & AInEq() const override
Definition: CompoundJointConstraint.h:52
mc_rbdyn::CompoundJointConstraintDescription CompoundJointConstraintDescription
Definition: CompoundJointConstraint.h:19
MC_SOLVER_DLLAPI void updateNrVars(const std::vector< rbd::MultiBody > &mbs, const tasks::qp::SolverData &data) override
std::string descInEq(const std::vector< rbd::MultiBody > &mbs, int i) override
MC_SOLVER_DLLAPI CompoundJointConstraint(const mc_rbdyn::Robots &robots, unsigned int rIndex, double dt)
#define MC_SOLVER_DLLAPI
Definition: api.h:50
MC_SOLVER_DLLAPI ~CompoundJointConstraint() override