47 static absl::StatusOr<std::unique_ptr<Xpress>>
New(
48 const std::string& model_name);
57 absl::StatusOr<int>
GetIntAttr(
int attribute)
const;
61 absl::Status
AddVars(absl::Span<const double> obj,
62 absl::Span<const double> lb, absl::Span<const double> ub,
63 absl::Span<const char> vtype);
65 absl::Status
AddVars(absl::Span<const int> vbegin, absl::Span<const int> vind,
66 absl::Span<const double> vval,
67 absl::Span<const double> obj,
68 absl::Span<const double> lb, absl::Span<const double> ub,
69 absl::Span<const char> vtype);
71 absl::Status
AddConstrs(absl::Span<const char> sense,
72 absl::Span<const double> rhs,
73 absl::Span<const double> rng);
74 absl::Status
AddConstrs(absl::Span<const char> rowtype,
75 absl::Span<const double> rhs,
76 absl::Span<const double> rng,
77 absl::Span<const int> start,
78 absl::Span<const int> colind,
79 absl::Span<const double> rowcoef);
83 absl::Span<const double> values);
85 absl::Span<const int> colind2,
86 absl::Span<const double> coefficients);
88 absl::Status
ChgCoeffs(absl::Span<const int> cind, absl::Span<const int> vind,
89 absl::Span<const double> val);
95 absl::Status
GetLpSol(absl::Span<double> primals, absl::Span<double> duals,
96 absl::Span<double> reducedCosts);
103 absl::Status
GetBasis(std::vector<int>& rowBasis,
104 std::vector<int>& colBasis)
const;
106 std::vector<int>& colBasis)
const;
109 const char* sMsg,
int nLen,
115 absl::StatusOr<std::vector<double>>
GetVarLb()
const;
116 absl::StatusOr<std::vector<double>>
GetVarUb()
const;
123 absl::Status ToStatus(
125 absl::StatusCode code = absl::StatusCode::kInvalidArgument)
const;
127 std::map<int, int> int_control_defaults_;
128 void initIntControlDefaults();