26 #ifndef CASADI_SQIC_INTERFACE_HPP
27 #define CASADI_SQIC_INTERFACE_HPP
29 #include "casadi/core/conic.hpp"
30 #include <casadi/interfaces/sqic/casadi_conic_sqic_export.h>
52 class SqicInterface :
public Conic {
55 explicit SqicInterface();
58 static Conic* creator(
const std::map<std::string, Sparsity>& st) {
59 return new SqicInterface(st);
63 explicit SqicInterface(
const std::map<std::string, Sparsity>& st);
66 ~SqicInterface()
override;
69 const char* plugin_name()
const override {
return "sqic";}
72 std::string class_name()
const override {
return "SqicInterface";}
78 virtual void generateNativeCode(std::ostream& file)
const;
80 virtual void evaluate();
83 static void sqic_error(
const std::string& module, casadi_int flag);
86 static std::map<casadi_int, std::string> calc_flagmap();
89 static std::map<casadi_int, std::string> flagmap;
92 static const std::string meta_doc;
100 std::vector<double> bl_;
102 std::vector<double> bu_;
104 std::vector<double> x_;
106 std::vector<casadi_int> locA_;
108 std::vector<casadi_int> indA_;
110 std::vector<casadi_int> hs_;
112 std::vector<casadi_int> hEtype_;
114 std::vector<casadi_int> indH_;
116 std::vector<casadi_int> locH_;
118 std::vector<double> rc_;
120 std::vector<double> pi_;