00001
00002
00003
00004
00005
00006
00007
00008 #ifndef CbcModelC_H
00009 #define CbcModelC_H
00010
00011
00012 #include "Coin_C_defines.h"
00013 #include <stddef.h>
00014
00015
00016
00017
00018
00019
00020
00021 #ifdef __cplusplus
00022 extern "C" {
00023 #endif
00024
00030
00032 COINLIBAPI Cbc_Model * COINLINKAGE
00033 Cbc_newModel(void)
00034 ;
00036 COINLIBAPI void COINLINKAGE
00037 Cbc_deleteModel(Cbc_Model * model)
00038 ;
00040 COINLIBAPI const char* COINLINKAGE Cbc_getVersion(void)
00041 ;
00072 COINLIBAPI void COINLINKAGE
00073 Cbc_loadProblem (Cbc_Model * model, const int numcols, const int numrows,
00074 const CoinBigIndex * start, const int* index,
00075 const double* value,
00076 const double* collb, const double* colub,
00077 const double* obj,
00078 const double* rowlb, const double* rowub)
00079 ;
00081 COINLIBAPI int COINLINKAGE
00082 Cbc_readMps(Cbc_Model * model, const char *filename)
00083 ;
00085 COINLIBAPI void COINLINKAGE
00086 Cbc_writeMps(Cbc_Model * model, const char *filename)
00087 ;
00091 COINLIBAPI void COINLINKAGE
00092 Cbc_setInitialSolution(Cbc_Model *model, const double * sol)
00093 ;
00095 COINLIBAPI void COINLINKAGE
00096 Cbc_problemName(Cbc_Model * model, int maxNumberCharacters, char * array)
00097 ;
00102 COINLIBAPI int COINLINKAGE
00103 Cbc_setProblemName(Cbc_Model * model, const char * array)
00104 ;
00105
00107 COINLIBAPI int COINLINKAGE
00108 Cbc_getNumElements(Cbc_Model * model)
00109 ;
00111 COINLIBAPI const CoinBigIndex * COINLINKAGE
00112 Cbc_getVectorStarts(Cbc_Model * model)
00113 ;
00115 COINLIBAPI const int * COINLINKAGE
00116 Cbc_getIndices(Cbc_Model * model)
00117 ;
00119 COINLIBAPI const double * COINLINKAGE
00120 Cbc_getElements(Cbc_Model * model)
00121 ;
00122
00124 COINLIBAPI size_t COINLINKAGE
00125 Cbc_maxNameLength(Cbc_Model * model)
00126 ;
00128 COINLIBAPI void COINLINKAGE
00129 Cbc_getRowName(Cbc_Model * model, int iRow, char * name, size_t maxLength)
00130 ;
00132 COINLIBAPI void COINLINKAGE
00133 Cbc_getColName(Cbc_Model * model, int iColumn, char * name, size_t maxLength)
00134 ;
00136 COINLIBAPI void COINLINKAGE
00137 Cbc_setColName(Cbc_Model * model, int iColumn, const char * name)
00138 ;
00140 COINLIBAPI void COINLINKAGE
00141 Cbc_setRowName(Cbc_Model * model, int iRow, const char * name)
00142 ;
00144 COINLIBAPI int COINLINKAGE
00145 Cbc_getNumRows(Cbc_Model * model)
00146 ;
00148 COINLIBAPI int COINLINKAGE
00149 Cbc_getNumCols(Cbc_Model * model)
00150 ;
00152 COINLIBAPI void COINLINKAGE
00153 Cbc_setObjSense(Cbc_Model * model, double sense)
00154 ;
00156 COINLIBAPI double COINLINKAGE
00157 Cbc_getObjSense(Cbc_Model * model)
00158 ;
00160 COINLIBAPI const double* COINLINKAGE
00161 Cbc_getRowLower(Cbc_Model * model)
00162 ;
00164 COINLIBAPI void COINLINKAGE
00165 Cbc_setRowLower(Cbc_Model * model, int index, double value)
00166 ;
00168 COINLIBAPI const double* COINLINKAGE
00169 Cbc_getRowUpper(Cbc_Model * model)
00170 ;
00172 COINLIBAPI void COINLINKAGE
00173 Cbc_setRowUpper(Cbc_Model * model, int index, double value)
00174 ;
00176 COINLIBAPI const double * COINLINKAGE
00177 Cbc_getObjCoefficients(Cbc_Model * model)
00178 ;
00180 COINLIBAPI void COINLINKAGE
00181 Cbc_setObjCoeff(Cbc_Model * model, int index, double value)
00182 ;
00184 COINLIBAPI const double * COINLINKAGE
00185 Cbc_getColLower(Cbc_Model * model)
00186 ;
00188 COINLIBAPI void COINLINKAGE
00189 Cbc_setColLower(Cbc_Model * model, int index, double value)
00190 ;
00192 COINLIBAPI const double * COINLINKAGE
00193 Cbc_getColUpper(Cbc_Model * model)
00194 ;
00196 COINLIBAPI void COINLINKAGE
00197 Cbc_setColUpper(Cbc_Model * model, int index, double value)
00198 ;
00200 COINLIBAPI int COINLINKAGE
00201 Cbc_isInteger(Cbc_Model * model, int i)
00202 ;
00204 COINLIBAPI void COINLINKAGE
00205 Cbc_setContinuous(Cbc_Model * model, int iColumn)
00206 ;
00208 COINLIBAPI void COINLINKAGE
00209 Cbc_setInteger(Cbc_Model * model, int iColumn)
00210 ;
00212 COINLIBAPI void COINLINKAGE
00213 Cbc_addSOS(Cbc_Model * model, int numRows, const int * rowStarts,
00214 const int * colIndices, const double * weights, const int type)
00215 ;
00217 COINLIBAPI void COINLINKAGE
00218 Cbc_printModel(Cbc_Model * model, const char * argPrefix)
00219 ;
00221 COINLIBAPI Cbc_Model * COINLINKAGE
00222 Cbc_clone(Cbc_Model * model)
00223 ;
00230 COINLIBAPI void COINLINKAGE
00231 Cbc_setParameter(Cbc_Model * model, const char * name, const char * value)
00232 ;
00233
00234
00240 COINLIBAPI void COINLINKAGE
00241 Cbc_registerCallBack(Cbc_Model * model,
00242 cbc_callback userCallBack)
00243 ;
00245 COINLIBAPI void COINLINKAGE
00246 Cbc_clearCallBack(Cbc_Model * model)
00247 ;
00248
00254
00255
00256 COINLIBAPI int COINLINKAGE
00257 Cbc_solve(Cbc_Model * model)
00258 ;
00264
00266 COINLIBAPI double COINLINKAGE
00267 Cbc_sumPrimalInfeasibilities(Cbc_Model * model)
00268 ;
00270 COINLIBAPI int COINLINKAGE
00271 Cbc_numberPrimalInfeasibilities(Cbc_Model * model)
00272 ;
00273
00276 COINLIBAPI void COINLINKAGE
00277 Cbc_checkSolution(Cbc_Model * model)
00278 ;
00279
00281 COINLIBAPI int COINLINKAGE
00282 Cbc_getIterationCount(Cbc_Model * model)
00283 ;
00285 COINLIBAPI int COINLINKAGE
00286 Cbc_isAbandoned(Cbc_Model * model)
00287 ;
00289 COINLIBAPI int COINLINKAGE
00290 Cbc_isProvenOptimal(Cbc_Model * model)
00291 ;
00293 COINLIBAPI int COINLINKAGE
00294 Cbc_isProvenInfeasible(Cbc_Model * model)
00295 ;
00297 COINLIBAPI int COINLINKAGE
00298 Cbc_isContinuousUnbounded(Cbc_Model * model)
00299 ;
00301 COINLIBAPI int COINLINKAGE
00302 Cbc_isNodeLimitReached(Cbc_Model * model)
00303 ;
00305 COINLIBAPI int COINLINKAGE
00306 Cbc_isSecondsLimitReached(Cbc_Model * model)
00307 ;
00309 COINLIBAPI int COINLINKAGE
00310 Cbc_isSolutionLimitReached(Cbc_Model * model)
00311 ;
00313 COINLIBAPI int COINLINKAGE
00314 Cbc_isInitialSolveAbandoned(Cbc_Model * model)
00315 ;
00317 COINLIBAPI int COINLINKAGE
00318 Cbc_isInitialSolveProvenOptimal(Cbc_Model * model)
00319 ;
00321 COINLIBAPI int COINLINKAGE
00322 Cbc_isInitialSolveProvenPrimalInfeasible(Cbc_Model * model)
00323 ;
00327 COINLIBAPI const double * COINLINKAGE
00328 Cbc_getRowActivity(Cbc_Model * model)
00329 ;
00331 COINLIBAPI const double * COINLINKAGE
00332 Cbc_getColSolution(Cbc_Model * model)
00333 ;
00335 COINLIBAPI double COINLINKAGE
00336 Cbc_getObjValue(Cbc_Model * model)
00337 ;
00339 COINLIBAPI double COINLINKAGE
00340 Cbc_getBestPossibleObjValue(Cbc_Model * model)
00341 ;
00343 COINLIBAPI int COINLINKAGE
00344 Cbc_getNodeCount(Cbc_Model * model)
00345 ;
00347 COINLIBAPI void COINLINKAGE
00348 Cbc_printSolution(Cbc_Model * model)
00349 ;
00359 COINLIBAPI int COINLINKAGE
00360 Cbc_status(Cbc_Model * model)
00361 ;
00374 COINLIBAPI int COINLINKAGE
00375 Cbc_secondaryStatus(Cbc_Model * model)
00376 ;
00378 #ifdef __cplusplus
00379 }
00380 #endif
00381 #endif