44struct SCIP_ConshdlrData
47 SCIP_Bool deleteobject;
71 assert(conshdlrdata->objconshdlr->scip_ !=
scip);
73 if( conshdlrdata->objconshdlr->iscloneable() )
94 assert(conshdlrdata->objconshdlr->scip_ ==
scip);
97 SCIP_CALL( conshdlrdata->objconshdlr->scip_free(
scip, conshdlr) );
100 if( conshdlrdata->deleteobject )
101 delete conshdlrdata->objconshdlr;
120 assert(conshdlrdata->objconshdlr->scip_ ==
scip);
123 SCIP_CALL( conshdlrdata->objconshdlr->scip_init(
scip, conshdlr, conss, nconss) );
140 SCIP_CALL( conshdlrdata->objconshdlr->scip_exit(
scip, conshdlr, conss, nconss) );
157 SCIP_CALL( conshdlrdata->objconshdlr->scip_initpre(
scip, conshdlr, conss, nconss) );
174 SCIP_CALL( conshdlrdata->objconshdlr->scip_exitpre(
scip, conshdlr, conss, nconss) );
191 SCIP_CALL( conshdlrdata->objconshdlr->scip_initsol(
scip, conshdlr, conss, nconss) );
208 SCIP_CALL( conshdlrdata->objconshdlr->scip_exitsol(
scip, conshdlr, conss, nconss, restart) );
225 SCIP_CALL( conshdlrdata->objconshdlr->scip_delete(
scip, conshdlr, cons, consdata) );
259 SCIP_CALL( conshdlrdata->objconshdlr->scip_initlp(
scip, conshdlr, conss, nconss, infeasible) );
362 SCIP_CALL( conshdlrdata->objconshdlr->scip_check(
scip, conshdlr, conss, nconss,
sol,
397 SCIP_CALL( conshdlrdata->objconshdlr->scip_presol(
scip, conshdlr, conss, nconss,
nrounds, presoltiming,
400 nfixedvars, naggrvars, nchgvartypes, nchgbds, naddholes,
401 ndelconss, naddconss, nupgdconss, nchgcoefs, nchgsides,
result) );
418 SCIP_CALL( conshdlrdata->objconshdlr->scip_resprop(
scip, conshdlr, cons,
infervar, inferinfo, boundtype, bdchgidx,
436 SCIP_CALL( conshdlrdata->objconshdlr->scip_lock(
scip, conshdlr, cons,
locktype, nlockspos, nlocksneg) );
453 SCIP_CALL( conshdlrdata->objconshdlr->scip_active(
scip, conshdlr, cons) );
470 SCIP_CALL( conshdlrdata->objconshdlr->scip_deactive(
scip, conshdlr, cons) );
487 SCIP_CALL( conshdlrdata->objconshdlr->scip_enable(
scip, conshdlr, cons) );
504 SCIP_CALL( conshdlrdata->objconshdlr->scip_disable(
scip, conshdlr, cons) );
520 SCIP_CALL( conshdlrdata->objconshdlr->scip_delvars(
scip, conshdlr, conss, nconss) );
536 SCIP_CALL( conshdlrdata->objconshdlr->scip_print(
scip, conshdlr, cons, file) );
553 initial, separate, enforce, check,
propagate, local, modifiable, dynamic, removable, stickingatnode, global,
valid) );
569 SCIP_CALL( conshdlrdata->objconshdlr->scip_parse(
scip, conshdlr, cons, name,
str,
570 initial, separate, enforce, check,
propagate, local, modifiable, dynamic, removable, stickingatnode,
success) );
633 SCIP_Bool deleteobject
644 conshdlrdata->objconshdlr = objconshdlr;
645 conshdlrdata->deleteobject = deleteobject;
678 if( conshdlr ==
NULL )
684 return conshdlrdata->objconshdlr;
699 return conshdlrdata->objconshdlr;
C++ wrapper for constraint handlers.
const SCIP_PRESOLTIMING scip_presoltiming_
const int scip_eagerfreq_
const int scip_sepapriority_
const SCIP_Bool scip_delaysepa_
const SCIP_Bool scip_delayprop_
const SCIP_Bool scip_needscons_
const int scip_enfopriority_
const int scip_maxprerounds_
const int scip_checkpriority_
const SCIP_PROPTIMING scip_proptiming_
void SCIPconshdlrSetData(SCIP_CONSHDLR *conshdlr, SCIP_CONSHDLRDATA *conshdlrdata)
SCIP_CONSHDLR * SCIPfindConshdlr(SCIP *scip, const char *name)
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_CONSENFORELAX((*consenforelax)), 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)
SCIP_CONSHDLRDATA * SCIPconshdlrGetData(SCIP_CONSHDLR *conshdlr)
static SCIP_DIVESET * diveset
assert(minobj< SCIPgetCutoffbound(scip))
static SCIP_Bool propagate
scip::ObjConshdlr * SCIPfindObjConshdlr(SCIP *scip, const char *name)
scip::ObjConshdlr * SCIPgetObjConshdlr(SCIP *scip, SCIP_CONSHDLR *conshdlr)
SCIP_RETCODE SCIPincludeObjConshdlr(SCIP *scip, scip::ObjConshdlr *objconshdlr, SCIP_Bool deleteobject)
C++ wrapper for constraint handlers.
#define SCIP_DECL_CONSENFOLP(x)
#define SCIP_DECL_CONSINITPRE(x)
#define SCIP_DECL_CONSDELETE(x)
#define SCIP_DECL_CONSEXIT(x)
#define SCIP_DECL_CONSGETVARS(x)
#define SCIP_DECL_CONSINITSOL(x)
#define SCIP_DECL_CONSPRINT(x)
struct SCIP_ConshdlrData SCIP_CONSHDLRDATA
#define SCIP_DECL_CONSSEPALP(x)
#define SCIP_DECL_CONSDISABLE(x)
#define SCIP_DECL_CONSENFORELAX(x)
#define SCIP_DECL_CONSGETDIVEBDCHGS(x)
#define SCIP_DECL_CONSPROP(x)
#define SCIP_DECL_CONSGETNVARS(x)
#define SCIP_DECL_CONSRESPROP(x)
#define SCIP_DECL_CONSACTIVE(x)
#define SCIP_DECL_CONSENFOPS(x)
#define SCIP_DECL_CONSPARSE(x)
#define SCIP_DECL_CONSTRANS(x)
#define SCIP_DECL_CONSDEACTIVE(x)
#define SCIP_DECL_CONSPRESOL(x)
#define SCIP_DECL_CONSENABLE(x)
#define SCIP_DECL_CONSINITLP(x)
#define SCIP_DECL_CONSEXITPRE(x)
#define SCIP_DECL_CONSLOCK(x)
#define SCIP_DECL_CONSCOPY(x)
#define SCIP_DECL_CONSINIT(x)
#define SCIP_DECL_CONSCHECK(x)
#define SCIP_DECL_CONSHDLRCOPY(x)
#define SCIP_DECL_CONSEXITSOL(x)
#define SCIP_DECL_CONSFREE(x)
#define SCIP_DECL_CONSSEPASOL(x)
#define SCIP_DECL_CONSDELVARS(x)
enum SCIP_Retcode SCIP_RETCODE