35 template<
typename UpdateT>
43 template<typename U = UpdateT, typename = typename std::enable_if<std::is_same<U, utils::UpdateRobot>::value>::type>
48 template<typename U = UpdateT, typename = typename std::enable_if<std::is_same<U, utils::UpdateLambda>::value>::type>
53 template<typename U = UpdateT, typename = typename std::enable_if<std::is_same<U, utils::UpdateForce>::value>::type>
58 const Eigen::MatrixXd &
AGenInEq()
const override {
return this->AFull_; }
60 std::string
descGenInEq(
const std::vector<rbd::MultiBody> &,
int i)
override
63 ss <<
"Failure at line " << i <<
" for inequality " << this->nameGenInEq();
Update< UpdateNrVarsRobot > UpdateRobot
Definition: Update.h:71
Update< UpdateNrVarsLambda > UpdateLambda
Definition: Update.h:72
Definition: GenInequalityConstraint.h:152
GenInequalityConstraintForce(const mc_solver::QPSolver &solver, const tasks::qp::ContactId &cid)
Definition: GenInequalityConstraint.h:153
Definition: GenInequalityConstraint.h:123
GenInequalityConstraintLambda(const tasks::qp::ContactId &cid)
Definition: GenInequalityConstraint.h:124
Definition: GenInequalityConstraint.h:89
GenInequalityConstraintRobot(unsigned int rIndex)
Definition: GenInequalityConstraint.h:90
Definition: QPSolver.h:86
Definition: Constraint.h:29
Definition: GenInequalityConstraint.h:37
const Eigen::MatrixXd & AGenInEq() const override
Definition: GenInequalityConstraint.h:58
GenInequalityConstraint(const tasks::qp::ContactId &cid)
Definition: GenInequalityConstraint.h:49
GenInequalityConstraint(const mc_solver::QPSolver &solver, const tasks::qp::ContactId &cid)
Definition: GenInequalityConstraint.h:54
GenInequalityConstraint(unsigned int rIndex)
Definition: GenInequalityConstraint.h:44
std::string descGenInEq(const std::vector< rbd::MultiBody > &, int i) override
Definition: GenInequalityConstraint.h:60