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 ;
00213 COINLIBAPI void COINLINKAGE
00214 Cbc_addSOS(Cbc_Model * model, int numRows, const int * rowStarts,
00215 const int * colIndices, const double * weights, const int type)
00216 ;
00218 COINLIBAPI void COINLINKAGE
00219 Cbc_printModel(Cbc_Model * model, const char * argPrefix)
00220 ;
00222 COINLIBAPI Cbc_Model * COINLINKAGE
00223 Cbc_clone(Cbc_Model * model)
00224 ;
00231 COINLIBAPI void COINLINKAGE
00232 Cbc_setParameter(Cbc_Model * model, const char * name, const char * value)
00233 ;
00234
00235
00241 COINLIBAPI void COINLINKAGE
00242 Cbc_registerCallBack(Cbc_Model * model,
00243 cbc_callback userCallBack)
00244 ;
00246 COINLIBAPI void COINLINKAGE
00247 Cbc_clearCallBack(Cbc_Model * model)
00248 ;
00249
00255
00256
00257 COINLIBAPI int COINLINKAGE
00258 Cbc_solve(Cbc_Model * model)
00259 ;
00265
00267 COINLIBAPI double COINLINKAGE
00268 Cbc_sumPrimalInfeasibilities(Cbc_Model * model)
00269 ;
00271 COINLIBAPI int COINLINKAGE
00272 Cbc_numberPrimalInfeasibilities(Cbc_Model * model)
00273 ;
00274
00277 COINLIBAPI void COINLINKAGE
00278 Cbc_checkSolution(Cbc_Model * model)
00279 ;
00280
00282 COINLIBAPI int COINLINKAGE
00283 Cbc_getIterationCount(Cbc_Model * model)
00284 ;
00286 COINLIBAPI int COINLINKAGE
00287 Cbc_isAbandoned(Cbc_Model * model)
00288 ;
00290 COINLIBAPI int COINLINKAGE
00291 Cbc_isProvenOptimal(Cbc_Model * model)
00292 ;
00294 COINLIBAPI int COINLINKAGE
00295 Cbc_isProvenInfeasible(Cbc_Model * model)
00296 ;
00298 COINLIBAPI int COINLINKAGE
00299 Cbc_isContinuousUnbounded(Cbc_Model * model)
00300 ;
00302 COINLIBAPI int COINLINKAGE
00303 Cbc_isNodeLimitReached(Cbc_Model * model)
00304 ;
00306 COINLIBAPI int COINLINKAGE
00307 Cbc_isSecondsLimitReached(Cbc_Model * model)
00308 ;
00310 COINLIBAPI int COINLINKAGE
00311 Cbc_isSolutionLimitReached(Cbc_Model * model)
00312 ;
00314 COINLIBAPI int COINLINKAGE
00315 Cbc_isInitialSolveAbandoned(Cbc_Model * model)
00316 ;
00318 COINLIBAPI int COINLINKAGE
00319 Cbc_isInitialSolveProvenOptimal(Cbc_Model * model)
00320 ;
00322 COINLIBAPI int COINLINKAGE
00323 Cbc_isInitialSolveProvenPrimalInfeasible(Cbc_Model * model)
00324 ;
00328 COINLIBAPI const double * COINLINKAGE
00329 Cbc_getRowActivity(Cbc_Model * model)
00330 ;
00332 COINLIBAPI const double * COINLINKAGE
00333 Cbc_getColSolution(Cbc_Model * model)
00334 ;
00336 COINLIBAPI double COINLINKAGE
00337 Cbc_getObjValue(Cbc_Model * model)
00338 ;
00340 COINLIBAPI double COINLINKAGE
00341 Cbc_getBestPossibleObjValue(Cbc_Model * model)
00342 ;
00344 COINLIBAPI int COINLINKAGE
00345 Cbc_getNodeCount(Cbc_Model * model)
00346 ;
00348 COINLIBAPI void COINLINKAGE
00349 Cbc_printSolution(Cbc_Model * model)
00350 ;
00360 COINLIBAPI int COINLINKAGE
00361 Cbc_status(Cbc_Model * model)
00362 ;
00375 COINLIBAPI int COINLINKAGE
00376 Cbc_secondaryStatus(Cbc_Model * model)
00377 ;
00379 #ifdef __cplusplus
00380 }
00381 #endif
00382 #endif