35 struct SCIP_ConshdlrData
60 assert(conshdlrdata !=
NULL);
61 assert(conshdlrdata->objconshdlr !=
NULL);
62 assert(conshdlrdata->objconshdlr->scip_ !=
scip);
64 if( conshdlrdata->objconshdlr->iscloneable() )
83 assert(conshdlrdata !=
NULL);
84 assert(conshdlrdata->objconshdlr !=
NULL);
85 assert(conshdlrdata->objconshdlr->scip_ ==
scip);
88 SCIP_CALL( conshdlrdata->objconshdlr->scip_free(
scip, conshdlr) );
91 if( conshdlrdata->deleteobject )
92 delete conshdlrdata->objconshdlr;
109 assert(conshdlrdata !=
NULL);
110 assert(conshdlrdata->objconshdlr !=
NULL);
111 assert(conshdlrdata->objconshdlr->scip_ ==
scip);
114 SCIP_CALL( conshdlrdata->objconshdlr->scip_init(
scip, conshdlr, conss, nconss) );
127 assert(conshdlrdata !=
NULL);
128 assert(conshdlrdata->objconshdlr !=
NULL);
131 SCIP_CALL( conshdlrdata->objconshdlr->scip_exit(
scip, conshdlr, conss, nconss) );
144 assert(conshdlrdata !=
NULL);
145 assert(conshdlrdata->objconshdlr !=
NULL);
148 SCIP_CALL( conshdlrdata->objconshdlr->scip_initpre(
scip, conshdlr, conss, nconss) );
161 assert(conshdlrdata !=
NULL);
162 assert(conshdlrdata->objconshdlr !=
NULL);
165 SCIP_CALL( conshdlrdata->objconshdlr->scip_exitpre(
scip, conshdlr, conss, nconss) );
178 assert(conshdlrdata !=
NULL);
179 assert(conshdlrdata->objconshdlr !=
NULL);
182 SCIP_CALL( conshdlrdata->objconshdlr->scip_initsol(
scip, conshdlr, conss, nconss) );
195 assert(conshdlrdata !=
NULL);
196 assert(conshdlrdata->objconshdlr !=
NULL);
199 SCIP_CALL( conshdlrdata->objconshdlr->scip_exitsol(
scip, conshdlr, conss, nconss, restart) );
212 assert(conshdlrdata !=
NULL);
213 assert(conshdlrdata->objconshdlr !=
NULL);
216 SCIP_CALL( conshdlrdata->objconshdlr->scip_delete(
scip, conshdlr, cons, consdata) );
229 assert(conshdlrdata !=
NULL);
230 assert(conshdlrdata->objconshdlr !=
NULL);
233 SCIP_CALL( conshdlrdata->objconshdlr->scip_trans(
scip, conshdlr, sourcecons, targetcons) );
246 assert(conshdlrdata !=
NULL);
247 assert(conshdlrdata->objconshdlr !=
NULL);
250 SCIP_CALL( conshdlrdata->objconshdlr->scip_initlp(
scip, conshdlr, conss, nconss) );
263 assert(conshdlrdata !=
NULL);
264 assert(conshdlrdata->objconshdlr !=
NULL);
267 SCIP_CALL( conshdlrdata->objconshdlr->scip_sepalp(
scip, conshdlr, conss, nconss, nusefulconss, result) );
280 assert(conshdlrdata !=
NULL);
281 assert(conshdlrdata->objconshdlr !=
NULL);
284 SCIP_CALL( conshdlrdata->objconshdlr->scip_sepasol(
scip, conshdlr, conss, nconss, nusefulconss, sol, result) );
297 assert(conshdlrdata !=
NULL);
298 assert(conshdlrdata->objconshdlr !=
NULL);
301 SCIP_CALL( conshdlrdata->objconshdlr->scip_enfolp(
scip, conshdlr, conss, nconss, nusefulconss, solinfeasible, result) );
314 assert(conshdlrdata !=
NULL);
315 assert(conshdlrdata->objconshdlr !=
NULL);
318 SCIP_CALL( conshdlrdata->objconshdlr->scip_enfops(
scip, conshdlr, conss, nconss, nusefulconss,
319 solinfeasible, objinfeasible, result) );
332 assert(conshdlrdata !=
NULL);
333 assert(conshdlrdata->objconshdlr !=
NULL);
336 SCIP_CALL( conshdlrdata->objconshdlr->scip_check(
scip, conshdlr, conss, nconss, sol,
337 checkintegrality, checklprows, printreason, result) );
350 assert(conshdlrdata !=
NULL);
351 assert(conshdlrdata->objconshdlr !=
NULL);
354 SCIP_CALL( conshdlrdata->objconshdlr->scip_prop(
scip, conshdlr, conss, nconss, nusefulconss, nmarkedconss, proptiming, result) );
367 assert(conshdlrdata !=
NULL);
368 assert(conshdlrdata->objconshdlr !=
NULL);
371 SCIP_CALL( conshdlrdata->objconshdlr->scip_presol(
scip, conshdlr, conss, nconss, nrounds, presoltiming,
372 nnewfixedvars, nnewaggrvars, nnewchgvartypes, nnewchgbds, nnewholes,
373 nnewdelconss, nnewaddconss, nnewupgdconss, nnewchgcoefs, nnewchgsides,
374 nfixedvars, naggrvars, nchgvartypes, nchgbds, naddholes,
375 ndelconss, naddconss, nupgdconss, nchgcoefs, nchgsides, result) );
388 assert(conshdlrdata !=
NULL);
389 assert(conshdlrdata->objconshdlr !=
NULL);
392 SCIP_CALL( conshdlrdata->objconshdlr->scip_resprop(
scip, conshdlr, cons, infervar, inferinfo, boundtype, bdchgidx,
393 relaxedbd, result) );
406 assert(conshdlrdata !=
NULL);
407 assert(conshdlrdata->objconshdlr !=
NULL);
410 SCIP_CALL( conshdlrdata->objconshdlr->scip_lock(
scip, conshdlr, cons, nlockspos, nlocksneg) );
423 assert(conshdlrdata !=
NULL);
424 assert(conshdlrdata->objconshdlr !=
NULL);
427 SCIP_CALL( conshdlrdata->objconshdlr->scip_active(
scip, conshdlr, cons) );
440 assert(conshdlrdata !=
NULL);
441 assert(conshdlrdata->objconshdlr !=
NULL);
444 SCIP_CALL( conshdlrdata->objconshdlr->scip_deactive(
scip, conshdlr, cons) );
457 assert(conshdlrdata !=
NULL);
458 assert(conshdlrdata->objconshdlr !=
NULL);
461 SCIP_CALL( conshdlrdata->objconshdlr->scip_enable(
scip, conshdlr, cons) );
474 assert(conshdlrdata !=
NULL);
475 assert(conshdlrdata->objconshdlr !=
NULL);
478 SCIP_CALL( conshdlrdata->objconshdlr->scip_disable(
scip, conshdlr, cons) );
490 assert(conshdlrdata !=
NULL);
491 assert(conshdlrdata->objconshdlr !=
NULL);
494 SCIP_CALL( conshdlrdata->objconshdlr->scip_delvars(
scip, conshdlr, conss, nconss) );
506 assert(conshdlrdata !=
NULL);
507 assert(conshdlrdata->objconshdlr !=
NULL);
510 SCIP_CALL( conshdlrdata->objconshdlr->scip_print(
scip, conshdlr, cons, file) );
522 assert(sourceconshdlrdata !=
NULL);
523 assert(sourceconshdlrdata->objconshdlr !=
NULL);
526 SCIP_CALL( sourceconshdlrdata->objconshdlr->scip_copy(
scip, cons, name, sourcescip, sourceconshdlr, sourcecons, varmap, consmap,
527 initial, separate, enforce, check, propagate, local, modifiable, dynamic, removable, stickingatnode, global, valid) );
539 assert(conshdlrdata !=
NULL);
540 assert(conshdlrdata->objconshdlr !=
NULL);
543 SCIP_CALL( conshdlrdata->objconshdlr->scip_parse(
scip, conshdlr, cons, name, str,
544 initial, separate, enforce, check, propagate, local, modifiable, dynamic, removable, stickingatnode, success) );
556 assert(conshdlrdata !=
NULL);
557 assert(conshdlrdata->objconshdlr !=
NULL);
560 SCIP_CALL( conshdlrdata->objconshdlr->scip_getvars(
scip, conshdlr, cons, vars, varssize, success) );
572 assert(conshdlrdata !=
NULL);
573 assert(conshdlrdata->objconshdlr !=
NULL);
576 SCIP_CALL( conshdlrdata->objconshdlr->scip_getnvars(
scip, conshdlr, cons, nvars, success) );
588 assert(conshdlrdata !=
NULL);
589 assert(conshdlrdata->objconshdlr !=
NULL);
592 SCIP_CALL( conshdlrdata->objconshdlr->scip_getdivebdchgs(
scip, conshdlr, diveset, sol, success, infeasible) );
612 assert(scip !=
NULL);
613 assert(objconshdlr !=
NULL);
614 assert(objconshdlr->
scip_ == scip);
618 conshdlrdata->objconshdlr = objconshdlr;
619 conshdlrdata->deleteobject = deleteobject;
629 consFreeObj, consInitObj, consExitObj,
630 consInitpreObj, consExitpreObj, consInitsolObj, consExitsolObj,
631 consDeleteObj, consTransObj, consInitlpObj,
632 consSepalpObj, consSepasolObj, consEnfolpObj, consEnfopsObj, consCheckObj,
633 consPropObj, consPresolObj, consRespropObj, consLockObj,
634 consActiveObj, consDeactiveObj,
635 consEnableObj, consDisableObj, consDelVarsObj,
636 consPrintObj, consCopyObj, consParseObj,
637 consGetVarsObj, consGetNVarsObj, consGetDiveBdChgsObj, conshdlrdata) );
652 if( conshdlr ==
NULL )
656 assert(conshdlrdata !=
NULL);
658 return conshdlrdata->objconshdlr;
670 assert(conshdlrdata !=
NULL);
672 return conshdlrdata->objconshdlr;
static SCIP_DECL_CONSDISABLE(consDisableObj)
SCIP_CONSHDLR * SCIPfindConshdlr(SCIP *scip, const char *name)
static SCIP_DECL_CONSPRESOL(consPresolObj)
const SCIP_Bool scip_delaysepa_
static SCIP_DECL_CONSEXITPRE(consExitpreObj)
const int scip_eagerfreq_
static SCIP_DECL_CONSINIT(consInitObj)
const SCIP_Bool scip_needscons_
static SCIP_DECL_CONSDEACTIVE(consDeactiveObj)
static SCIP_DECL_CONSRESPROP(consRespropObj)
static SCIP_DECL_CONSCHECK(consCheckObj)
static SCIP_DECL_CONSGETDIVEBDCHGS(consGetDiveBdChgsObj)
static SCIP_DECL_CONSGETVARS(consGetVarsObj)
static SCIP_DECL_CONSEXIT(consExitObj)
enum SCIP_Retcode SCIP_RETCODE
static SCIP_DECL_CONSINITSOL(consInitsolObj)
static SCIP_DECL_CONSENFOPS(consEnfopsObj)
static SCIP_DECL_CONSLOCK(consLockObj)
static SCIP_DECL_CONSGETNVARS(consGetNVarsObj)
C++ wrapper for constraint handlers.
static SCIP_DECL_CONSHDLRCOPY(conshdlrCopyObj)
SCIP_CONSHDLRDATA * SCIPconshdlrGetData(SCIP_CONSHDLR *conshdlr)
SCIP_RETCODE SCIPincludeObjConshdlr(SCIP *scip, scip::ObjConshdlr *objconshdlr, SCIP_Bool deleteobject)
scip::ObjConshdlr * SCIPfindObjConshdlr(SCIP *scip, const char *name)
static SCIP_DECL_CONSENABLE(consEnableObj)
const int scip_maxprerounds_
const int scip_sepapriority_
const SCIP_Bool scip_delayprop_
static SCIP_DECL_CONSACTIVE(consActiveObj)
static SCIP_DECL_CONSENFOLP(consEnfolpObj)
static SCIP_DECL_CONSTRANS(consTransObj)
static SCIP_DECL_CONSDELVARS(consDelVarsObj)
C++ wrapper for constraint handlers.
static SCIP_DECL_CONSINITLP(consInitlpObj)
const unsigned int scip_proptiming_
static SCIP_DECL_CONSPROP(consPropObj)
scip::ObjConshdlr * SCIPgetObjConshdlr(SCIP *scip, SCIP_CONSHDLR *conshdlr)
static SCIP_DECL_CONSEXITSOL(consExitsolObj)
static SCIP_DECL_CONSDELETE(consDeleteObj)
const int scip_checkpriority_
static SCIP_DECL_CONSSEPASOL(consSepasolObj)
static SCIP_DECL_CONSCOPY(consCopyObj)
static SCIP_DECL_CONSPARSE(consParseObj)
SCIP_RETCODE SCIPincludeConshdlr(SCIP *scip, const char *name, const char *desc, int sepapriority, int enfopriority, int chckpriority, int sepafreq, int propfreq, int eagerfreq, int maxprerounds, SCIP_Bool delaysepa, SCIP_Bool delayprop, SCIP_Bool needscons, SCIP_PROPTIMING proptiming, SCIP_PRESOLTIMING presoltiming, SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)), SCIP_DECL_CONSFREE((*consfree)), SCIP_DECL_CONSINIT((*consinit)), SCIP_DECL_CONSEXIT((*consexit)), SCIP_DECL_CONSINITPRE((*consinitpre)), SCIP_DECL_CONSEXITPRE((*consexitpre)), SCIP_DECL_CONSINITSOL((*consinitsol)), SCIP_DECL_CONSEXITSOL((*consexitsol)), SCIP_DECL_CONSDELETE((*consdelete)), SCIP_DECL_CONSTRANS((*constrans)), SCIP_DECL_CONSINITLP((*consinitlp)), SCIP_DECL_CONSSEPALP((*conssepalp)), SCIP_DECL_CONSSEPASOL((*conssepasol)), SCIP_DECL_CONSENFOLP((*consenfolp)), SCIP_DECL_CONSENFOPS((*consenfops)), SCIP_DECL_CONSCHECK((*conscheck)), SCIP_DECL_CONSPROP((*consprop)), SCIP_DECL_CONSPRESOL((*conspresol)), SCIP_DECL_CONSRESPROP((*consresprop)), SCIP_DECL_CONSLOCK((*conslock)), SCIP_DECL_CONSACTIVE((*consactive)), SCIP_DECL_CONSDEACTIVE((*consdeactive)), SCIP_DECL_CONSENABLE((*consenable)), SCIP_DECL_CONSDISABLE((*consdisable)), SCIP_DECL_CONSDELVARS((*consdelvars)), SCIP_DECL_CONSPRINT((*consprint)), SCIP_DECL_CONSCOPY((*conscopy)), SCIP_DECL_CONSPARSE((*consparse)), SCIP_DECL_CONSGETVARS((*consgetvars)), SCIP_DECL_CONSGETNVARS((*consgetnvars)), SCIP_DECL_CONSGETDIVEBDCHGS((*consgetdivebdchgs)), SCIP_CONSHDLRDATA *conshdlrdata)
static SCIP_DECL_CONSINITPRE(consInitpreObj)
static SCIP_DECL_CONSFREE(consFreeObj)
struct SCIP_ConshdlrData SCIP_CONSHDLRDATA
const unsigned int scip_presoltiming_
static SCIP_DECL_CONSPRINT(consPrintObj)
const int scip_enfopriority_
void SCIPconshdlrSetData(SCIP_CONSHDLR *conshdlr, SCIP_CONSHDLRDATA *conshdlrdata)
static SCIP_DECL_CONSSEPALP(consSepalpObj)