67 if( reader->readercopy !=
NULL )
81 const char* extension,
100 (*reader)->readercopy = readercopy;
101 (*reader)->readerfree = readerfree;
102 (*reader)->readerread = readerread;
103 (*reader)->readerwrite = readerwrite;
104 (*reader)->readerdata = readerdata;
105 (*reader)->exact =
FALSE;
119 const char* extension,
148 if( *reader ==
NULL )
152 if( (*reader)->readerfree !=
NULL )
173 const char* extension
187 const char* filename,
188 const char* extension,
205 if(
set->exact_enable && !reader->
exact )
225 retcode = reader->readerread(
set->scip, reader, filename,
result);
263 const char * oldname;
284 const char* filename,
309 const char* consname;
310 const char** varnames =
NULL;
311 const char** fixedvarnames =
NULL;
312 const char** consnames =
NULL;
321 if(
set->exact_enable && !reader->
exact )
341 if( nduplicates < 3 )
349 for(
i = 0;
i < nfixedvars; ++
i )
353 if( nduplicates < 3 )
361 if( nduplicates > 0 )
363 if( nduplicates > 3 )
367 SCIPmessageFPrintWarning(msghdlr,
"This will likely result in wrong output files. Please use unique variable names.\n");
377 conshdlrs =
set->conshdlrs;
378 nconshdlrs =
set->nconshdlrs;
384 for(
i = 0;
i < nconshdlrs; ++
i )
387 if(
set->write_allconss )
399 for(
i = 0;
i < nconshdlrs; ++
i )
406 if(
set->write_allconss )
419 for(
c = 0;
c < nconshdlrconss; ++
c )
421 conss[nconss] = conshdlrconss[
c];
437 for(
i = 0;
i < nconss; ++
i )
441 if( nduplicates < 3 )
451 if( nduplicates > 3 )
455 SCIPmessageFPrintWarning(msghdlr,
"This can result in wrong output files, especially with indicator constraints.\n");
476 size = (int) log10(
nvars+1.0) + 3;
489 size = (int) log10(nfixedvars+1.0) + 3;
491 for(
i = 0;
i < nfixedvars; ++
i )
502 size = (int) log10(nconss+1.0) + 3;
504 for(
i = 0;
i < nconss; ++
i )
516 if(
set->exact_enable )
543 objoffsetexact =
NULL;
544 objscaleexact =
NULL;
568 if( objscaleexact !=
NULL )
570 if( objoffsetexact !=
NULL )
579 for(
i = nconss - 1;
i >= 0; --
i )
591 for(
i = nfixedvars - 1;
i >= 0; --
i )
653 reader->readercopy = readercopy;
664 reader->readerfree = readerfree;
675 reader->readerread = readerread;
686 reader->readerwrite = readerwrite;
736 return (reader->readerread !=
NULL);
746 return (reader->readerwrite !=
NULL);
void SCIPclockSetTime(SCIP_CLOCK *clck, SCIP_Real sec)
void SCIPclockStop(SCIP_CLOCK *clck, SCIP_SET *set)
SCIP_Bool SCIPclockIsRunning(SCIP_CLOCK *clck)
void SCIPclockEnableOrDisable(SCIP_CLOCK *clck, SCIP_Bool enable)
void SCIPclockStart(SCIP_CLOCK *clck, SCIP_SET *set)
SCIP_Real SCIPclockGetTime(SCIP_CLOCK *clck)
void SCIPclockReset(SCIP_CLOCK *clck)
void SCIPclockFree(SCIP_CLOCK **clck)
SCIP_RETCODE SCIPclockCreate(SCIP_CLOCK **clck, SCIP_CLOCKTYPE clocktype)
internal methods for clocks and timing issues
void SCIPconsSetNamePointer(SCIP_CONS *cons, const char *name)
internal methods for constraints and constraint handlers
common defines and data types used in all packages of SCIP
#define SCIP_CALL_FINALLY(x, y)
SCIP_Real SCIPgetOrigObjoffset(SCIP *scip)
SCIP_RATIONAL * SCIPgetOrigObjoffsetExact(SCIP *scip)
SCIP_CONS ** SCIPconshdlrGetEnfoConss(SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNConss(SCIP_CONSHDLR *conshdlr)
const char * SCIPconshdlrGetName(SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNEnfoConss(SCIP_CONSHDLR *conshdlr)
SCIP_CONS ** SCIPconshdlrGetConss(SCIP_CONSHDLR *conshdlr)
const char * SCIPconsGetName(SCIP_CONS *cons)
BMS_BUFMEM * SCIPbuffer(SCIP *scip)
void SCIPrationalAdd(SCIP_RATIONAL *res, SCIP_RATIONAL *op1, SCIP_RATIONAL *op2)
void SCIPrationalDiv(SCIP_RATIONAL *res, SCIP_RATIONAL *op1, SCIP_RATIONAL *op2)
void SCIPrationalFreeBuffer(BMS_BUFMEM *bufmem, SCIP_RATIONAL **rational)
SCIP_RETCODE SCIPrationalCreateBuffer(BMS_BUFMEM *bufmem, SCIP_RATIONAL **rational)
void SCIPrationalSetRational(SCIP_RATIONAL *res, SCIP_RATIONAL *src)
void SCIPrationalMultReal(SCIP_RATIONAL *res, SCIP_RATIONAL *op1, SCIP_Real op2)
SCIP_READERDATA * SCIPreaderGetData(SCIP_READER *reader)
const char * SCIPreaderGetExtension(SCIP_READER *reader)
void SCIPreaderSetData(SCIP_READER *reader, SCIP_READERDATA *readerdata)
const char * SCIPreaderGetName(SCIP_READER *reader)
SCIP_Bool SCIPreaderCanRead(SCIP_READER *reader)
SCIP_Bool SCIPreaderCanWrite(SCIP_READER *reader)
void SCIPreaderMarkExact(SCIP_READER *reader)
const char * SCIPreaderGetDesc(SCIP_READER *reader)
const char * SCIPvarGetName(SCIP_VAR *var)
int SCIPstrcasecmp(const char *s1, const char *s2)
int SCIPsnprintf(char *t, int len, const char *s,...)
assert(minobj< SCIPgetCutoffbound(scip))
memory allocation routines
#define BMSfreeMemory(ptr)
#define BMSduplicateMemoryArray(ptr, source, num)
#define BMSclearMemory(ptr)
#define BMSfreeMemoryArrayNull(ptr)
#define BMSallocMemory(ptr)
void SCIPmessageFPrintWarning(SCIP_MESSAGEHDLR *messagehdlr, const char *formatstr,...)
int SCIPprobGetNContVars(SCIP_PROB *prob)
SCIP_CONS ** SCIPprobGetConss(SCIP_PROB *prob)
int SCIPprobGetNFixedVars(SCIP_PROB *prob)
const char * SCIPprobGetName(SCIP_PROB *prob)
SCIP_Real SCIPprobGetObjoffset(SCIP_PROB *prob)
int SCIPprobGetNConss(SCIP_PROB *prob)
int SCIPprobGetStartNConss(SCIP_PROB *prob)
SCIP_RATIONAL * SCIPprobGetObjoffsetExact(SCIP_PROB *prob)
SCIP_OBJSENSE SCIPprobGetObjsense(SCIP_PROB *prob)
int SCIPprobGetStartNVars(SCIP_PROB *prob)
SCIP_Real SCIPprobGetObjscale(SCIP_PROB *prob)
SCIP_VAR * SCIPprobFindVar(SCIP_PROB *prob, const char *name)
int SCIPprobGetNImplVars(SCIP_PROB *prob)
SCIP_VAR ** SCIPprobGetFixedVars(SCIP_PROB *prob)
SCIP_CONS * SCIPprobFindCons(SCIP_PROB *prob, const char *name)
int SCIPprobGetNIntVars(SCIP_PROB *prob)
int SCIPprobGetNVars(SCIP_PROB *prob)
SCIP_PROBDATA * SCIPprobGetData(SCIP_PROB *prob)
int SCIPprobGetMaxNConss(SCIP_PROB *prob)
int SCIPprobGetNBinVars(SCIP_PROB *prob)
SCIP_RATIONAL * SCIPprobGetObjscaleExact(SCIP_PROB *prob)
SCIP_VAR ** SCIPprobGetVars(SCIP_PROB *prob)
SCIP_Bool SCIPprobIsTransformed(SCIP_PROB *prob)
internal methods for storing and manipulating the main problem
public methods for managing constraints
public methods for message output
public data structures and miscellaneous methods
public methods for problem variables
SCIP_RETCODE SCIPreaderFree(SCIP_READER **reader, SCIP_SET *set)
SCIP_RETCODE SCIPreaderWrite(SCIP_READER *reader, SCIP_PROB *prob, SCIP_SET *set, SCIP_MESSAGEHDLR *msghdlr, FILE *file, const char *filename, const char *format, SCIP_Bool genericnames, SCIP_RESULT *result)
static SCIP_Bool readerIsApplicable(SCIP_READER *reader, const char *extension)
SCIP_Real SCIPreaderGetReadingTime(SCIP_READER *reader)
SCIP_RETCODE SCIPreaderCopyInclude(SCIP_READER *reader, SCIP_SET *set)
SCIP_RETCODE SCIPreaderRead(SCIP_READER *reader, SCIP_SET *set, const char *filename, const char *extension, SCIP_RESULT *result)
void SCIPreaderSetCopy(SCIP_READER *reader,)
void SCIPreaderSetRead(SCIP_READER *reader,)
SCIP_RETCODE SCIPreaderCreate(SCIP_READER **reader, SCIP_SET *set, const char *name, const char *desc, const char *extension, SCIP_DECL_READERCOPY((*readercopy)), SCIP_DECL_READERFREE((*readerfree)), SCIP_DECL_READERREAD((*readerread)), SCIP_DECL_READERWRITE((*readerwrite)), SCIP_READERDATA *readerdata)
static SCIP_RETCODE doReaderCreate(SCIP_READER **reader, const char *name, const char *desc, const char *extension, SCIP_DECL_READERCOPY((*readercopy)), SCIP_DECL_READERFREE((*readerfree)), SCIP_DECL_READERREAD((*readerread)), SCIP_DECL_READERWRITE((*readerwrite)), SCIP_READERDATA *readerdata)
SCIP_RETCODE SCIPreaderResetReadingTime(SCIP_READER *reader)
void SCIPreaderEnableOrDisableClocks(SCIP_READER *reader, SCIP_Bool enable)
void SCIPreaderSetFree(SCIP_READER *reader,)
static void resetVarname(SCIP_VAR *var, SCIP_SET *set, const char *name)
void SCIPreaderSetWrite(SCIP_READER *reader,)
internal methods for input file readers
public methods for memory management
public methods for global and local (sub)problems
internal methods for global SCIP settings
#define SCIPsetFreeBufferArray(set, ptr)
#define SCIPsetAllocBufferArray(set, ptr, num)
SCIP_READERDATA * readerdata
datastructures for input file readers
struct SCIP_Clock SCIP_CLOCK
struct SCIP_Cons SCIP_CONS
struct SCIP_Conshdlr SCIP_CONSHDLR
struct SCIP_Messagehdlr SCIP_MESSAGEHDLR
struct SCIP_Prob SCIP_PROB
struct SCIP_Rational SCIP_RATIONAL
#define SCIP_DECL_READERWRITE(x)
struct SCIP_ReaderData SCIP_READERDATA
struct SCIP_Reader SCIP_READER
#define SCIP_DECL_READERREAD(x)
#define SCIP_DECL_READERCOPY(x)
#define SCIP_DECL_READERFREE(x)
enum SCIP_Result SCIP_RESULT
enum SCIP_Retcode SCIP_RETCODE
void SCIPvarSetNamePointer(SCIP_VAR *var, const char *name)
internal methods for problem variables