1 #ifndef OsiDylpWarmStartBasis_H
2 #define OsiDylpWarmStartBasis_H
67 return (static_cast<CoinWarmStartBasis::Status>(st)) ; }
75 st_byte =
static_cast<char>(st_byte & ~(3 << ((i&3)<<1))) ;
76 st_byte =
static_cast<char>(st_byte | (st << ((i&3)<<1))) ; }
122 void setSize (
int ns,
int na) ;
126 void resize (
int numRows,
int numCols) ;
149 void deleteRows (
int number,
const int *which) ;
180 const char *aStat,
const char *cStat = 0) ;
205 (
int ns,
int na,
char *&sStat,
char *&aStat,
char *&cStat) ;
210 (
int ns,
int na,
char *&sStat,
char *&aStat) ;
220 void print ()
const ;
272 return (dynamic_cast<CoinWarmStartDiff *>(odwsbd)) ; }
292 const unsigned int *
const diffVals,
328 #endif // OsiDylpWarmStartBasis_H
int consze_
Number of entries (and allocated capacity), in units of int.
char * constraintStatus_
vector of constraint status information
dyphase_enum phase_
dylp phase
OsiDylpWarmStartBasis()
Default constructor (empty object)
void compressRows(int tgtCnt, const int *tgts)
Delete a set of rows from the basis.
unsigned int * condiffNdxs_
Array of diff indices for constraint status.
unsigned int * condiffVals_
Array of diff values for constraint status.
~OsiDylpWarmStartBasis()
Destructor.
dyphase_enum getPhase() const
Get the lp phase for this basis.
OsiDylpWarmStartBasis & operator=(const OsiDylpWarmStartBasis &rhs)
Assignment.
A `diff' between two OsiDylpWarmStartBasis objects.
virtual OsiDylpWarmStartBasisDiff & operator=(const OsiDylpWarmStartBasisDiff &rhs)
Assignment.
void checkBasis(CoinMessageHandler *msghandler=NULL) const
Performs basis consistency checks (for debug)
int numberActiveConstraints() const
Return the number of active constraints.
void setConStatus(int i, Status st)
Set the status of the specified constraint.
The default COIN simplex (basis-oriented) warm start class.
Base class for message handling.
CoinWarmStartDiff * generateDiff(const CoinWarmStart *const oldCWS) const
Generate a `diff' that can convert oldBasis to this basis.
A `diff' between two CoinWarmStartBasis objects.
void resize(int numRows, int numCols)
Set basis capacity; existing basis is maintained.
void deleteRows(int number, const int *which)
Delete a set of rows from the basis.
Status getConStatus(int i) const
Return the status of the specified constraint.
void setPhase(dyphase_enum phase)
Set the lp phase for this basis.
virtual ~OsiDylpWarmStartBasisDiff()
Destructor.
virtual CoinWarmStartDiff * clone() const
`Virtual constructor'
void print() const
Prints in readable format (for debug)
const char * getConstraintStatus() const
const overload for getConstraintStatus()
The dylp warm start class.
OsiDylpWarmStartBasisDiff()
Default constructor.
Abstract base class for warm start `diff' objects.
std::vector< XferEntry > XferVec
Transfer vector for mergeBasis(const CoinWarmStartBasis*,const XferVec*,const XferVec*) ...
Status
Enum for status of variables.
void assignBasisStatus(int ns, int na, char *&sStat, char *&aStat, char *&cStat)
Assign the status vectors to be the warm start information.
void setSize(int ns, int na)
Set basis capacity; existing basis is discarded.
char * getConstraintStatus()
Return the status array for constraints.
Abstract base class for warm start information.
virtual void mergeBasis(const CoinWarmStartBasis *src, const XferVec *xferRows, const XferVec *xferCols)
Merge entries from a source basis into this basis.
CoinWarmStart * clone() const
`Virtual constructor'
void applyDiff(const CoinWarmStartDiff *const cwsdDiff)
Apply diff to this basis.