12 #include <tasks/config.hh>
16 #include <Eigen/Sparse>
68 virtual void updateSize(
int nrVars,
int nrEq,
int nrInEq,
int nrGenInEq) = 0;
75 virtual void setDependencies(
int nrVars, std::vector<std::tuple<int, int, double>> dependencies);
86 const std::vector<Equality *> & eqConstr,
87 const std::vector<Inequality *> & inEqConstr,
88 const std::vector<GenInequality *> & genInEqConstr,
89 const std::vector<Bound *> & boundConstr) = 0;
98 virtual const Eigen::VectorXd &
result()
const = 0;
101 virtual std::ostream &
errorMsg(
const std::vector<rbd::MultiBody> & mbs,
102 const std::vector<Task *> &
tasks,
103 const std::vector<Equality *> & eqConstr,
104 const std::vector<Inequality *> & inEqConstr,
105 const std::vector<GenInequality *> & genInEqConstr,
106 const std::vector<Bound *> & boundConstr,
107 std::ostream & out)
const = 0;
110 virtual std::string
name()
const = 0;
Definition: GenQPSolver.h:53
virtual std::ostream & errorMsg(const std::vector< rbd::MultiBody > &mbs, const std::vector< Task * > &tasks, const std::vector< Equality * > &eqConstr, const std::vector< Inequality * > &inEqConstr, const std::vector< GenInequality * > &genInEqConstr, const std::vector< Bound * > &boundConstr, std::ostream &out) const =0
virtual const Eigen::VectorXd & result() const =0
virtual void updateMatrix(const std::vector< Task * > &tasks, const std::vector< Equality * > &eqConstr, const std::vector< Inequality * > &inEqConstr, const std::vector< GenInequality * > &genInEqConstr, const std::vector< Bound * > &boundConstr)=0
std::vector< int > reducedToFull_
Definition: GenQPSolver.h:116
std::vector< std::tuple< int, int, double > > dependencies_
Definition: GenQPSolver.h:119
virtual void updateSize(int nrVars, int nrEq, int nrInEq, int nrGenInEq)=0
virtual void setDependencies(int nrVars, std::vector< std::tuple< int, int, double >> dependencies)
virtual ~GenQPSolver()
Definition: GenQPSolver.h:59
std::vector< int > fullToReduced_
Definition: GenQPSolver.h:114
static const std::string default_qp_solver
Default QP solver.
Definition: GenQPSolver.h:56
virtual std::string name() const =0
Eigen::SparseMatrix< double > multipliers_
Definition: GenQPSolver.h:121
Definition: GenQPSolver.h:21
TASKS_DLLAPI GenQPSolver * createQPSolver(const std::string &name)
Definition: GenQPUtils.h:19