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,
#define MC_SOLVER_DLLAPI
Definition: api.h:50
std::vector< CompoundJointConstraintDescription, Eigen::aligned_allocator< CompoundJointConstraintDescription > > CompoundJointConstraintDescriptionVector
Definition: CompoundJointConstraintDescription.h:33
std::unique_ptr< void, void(*)(void *)> void_ptr
Definition: void_ptr.h:14
mc_rbdyn::CompoundJointConstraintDescriptionVector CompoundJointConstraintDescriptionVector
Definition: CompoundJointConstraint.h:20
mc_rbdyn::CompoundJointConstraintDescription CompoundJointConstraintDescription
Definition: CompoundJointConstraint.h:19
Definition: CompoundJointConstraintDescription.h:24
Definition: CompoundJointConstraint.h:98
CompoundJointConstraint(const mc_rbdyn::Robots &robots, unsigned int robotIndex, double dt)
void removeFromSolverImpl(QPSolver &solver) override
CompoundJointConstraint(const mc_rbdyn::Robots &robot, unsigned int robotIndex, double dt, const CompoundJointConstraintDescriptionVector &cs)
void addToSolverImpl(QPSolver &solver) override
This class is a basis to wrap Constraint functions from Tasks. The aim of such wrappers should be two...
Definition: ConstraintSet.h:21
Definition: QPSolver.h:86
Definition: CompoundJointConstraint.h:31
MC_SOLVER_DLLAPI void update(const std::vector< rbd::MultiBody > &mbs, const std::vector< rbd::MultiBodyConfig > &mbcs, const tasks::qp::SolverData &data) override
const Eigen::VectorXd & bInEq() const override
Definition: CompoundJointConstraint.h:58
std::string nameInEq() const override
Definition: CompoundJointConstraint.h:56
MC_SOLVER_DLLAPI ~CompoundJointConstraint() override
int maxInEq() const override
Definition: CompoundJointConstraint.h:54
MC_SOLVER_DLLAPI void addConstraint(const mc_rbdyn::Robots &robots, unsigned int rIndex, const CompoundJointConstraintDescription &desc)
const Eigen::MatrixXd & AInEq() const override
Definition: CompoundJointConstraint.h:52
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, const CompoundJointConstraintDescriptionVector &desc)
MC_SOLVER_DLLAPI CompoundJointConstraint(const mc_rbdyn::Robots &robots, unsigned int rIndex, double dt)
MC_SOLVER_DLLAPI void updateNrVars(const std::vector< rbd::MultiBody > &mbs, const tasks::qp::SolverData &data) override