27 template<
typename Constra
intT,
typename UpdateT>
33 "This must be instanciated with a known ConstraintT");
41 explicit Constraint(
unsigned int rIndex) : UpdateT(rIndex)
59 { UpdateT::updateNrVarsImpl(mbs, data); }
61 void update(
const std::vector<rbd::MultiBody> & mbs,
62 const std::vector<rbd::MultiBodyConfig> & mbcs,
64 { UpdateT::updateImpl(mbs, mbcs, data); }
std::optional< Eigen::VectorXd > value
Definition: QPSolver.h:88
Definition: Constraint.h:29
void update(const std::vector< rbd::MultiBody > &mbs, const std::vector< rbd::MultiBodyConfig > &mbcs, const tasks::qp::SolverData &data) override
Definition: Constraint.h:61
virtual ~Constraint()
Definition: Constraint.h:56
Constraint(const mc_solver::QPSolver &solver, const tasks::qp::ContactId &cid)
Definition: Constraint.h:51
void updateNrVars(const std::vector< rbd::MultiBody > &mbs, const tasks::qp::SolverData &data) override
Definition: Constraint.h:58
Constraint(unsigned int rIndex)
Definition: Constraint.h:41
Constraint(const tasks::qp::ContactId &cid)
Definition: Constraint.h:46