4 #ifndef OsiXprSolverInterface_H
5 #define OsiXprSolverInterface_H
92 virtual bool setWarmStart(
const CoinWarmStart* warmstart);
188 virtual bool isBinary(
int colIndex)
const;
194 virtual bool isInteger(
int colIndex)
const;
245 virtual std::vector<double*>
getDualRays(
int maxNumRays)
const;
257 virtual std::vector<double*>
getPrimalRays(
int maxNumRays)
const;
276 virtual void setObjCoeff(
int elementIndex,
double elementValue );
280 virtual void setColLower(
int elementIndex,
double elementValue );
284 virtual void setColUpper(
int elementIndex,
double elementValue );
290 double lower,
double upper );
301 const int* indexLast,
302 const double* boundList);
306 virtual void setRowLower(
int elementIndex,
double elementValue );
310 virtual void setRowUpper(
int elementIndex,
double elementValue );
316 double lower,
double upper );
319 virtual void setRowType(
int index,
char sense,
double rightHandSide,
331 const int* indexLast,
332 const double* boundList);
345 const int* indexLast,
346 const char* senseList,
347 const double* rhsList,
348 const double* rangeList);
363 virtual void setInteger(
const int* indices,
int len);
400 virtual void addCol(
const CoinPackedVectorBase& vec,
401 const double collb,
const double colub,
404 virtual void addCols(
const int numcols,
405 const CoinPackedVectorBase *
const * cols,
406 const double* collb,
const double* colub,
409 virtual void deleteCols(
const int num,
const int * colIndices);
412 virtual void addRow(
const CoinPackedVectorBase& vec,
413 const double rowlb,
const double rowub);
415 virtual void addRow(
const CoinPackedVectorBase& vec,
416 const char rowsen,
const double rowrhs,
417 const double rowrng);
419 virtual void addRows(
const int numrows,
420 const CoinPackedVectorBase *
const * rows,
421 const double* rowlb,
const double* rowub);
423 virtual void addRows(
const int numrows,
424 const CoinPackedVectorBase *
const * rows,
425 const char* rowsen,
const double* rowrhs,
426 const double* rowrng);
428 virtual void deleteRows(
const int num,
const int * rowIndices);
453 double effectivenessLb = 0.0);
472 virtual void loadProblem(
const CoinPackedMatrix& matrix,
473 const double* collb,
const double* colub,
475 const double* rowlb,
const double* rowub);
485 double*& collb,
double*& colub,
double*& obj,
486 double*& rowlb,
double*& rowub);
500 virtual void loadProblem(
const CoinPackedMatrix& matrix,
501 const double* collb,
const double* colub,
503 const char* rowsen,
const double* rowrhs,
504 const double* rowrng);
514 double*& collb,
double*& colub,
double*& obj,
515 char*& rowsen,
double*& rowrhs,
520 virtual void loadProblem(
const int numcols,
const int numrows,
521 const int* start,
const int* index,
523 const double* collb,
const double* colub,
525 const double* rowlb,
const double* rowub);
529 virtual void loadProblem(
const int numcols,
const int numrows,
530 const int* start,
const int* index,
532 const double* collb,
const double* colub,
534 const char* rowsen,
const double* rowrhs,
535 const double* rowrng);
539 virtual int readMps(
const char *filename,
540 const char *extension =
"mps");
547 virtual void writeMps(
const char *filename,
548 const char *extension =
"mps",
549 double objSense=0.0)
const;