35 struct SCIP_BranchruleData
60 assert(branchruledata !=
NULL);
61 assert(branchruledata->objbranchrule !=
NULL);
62 assert(branchruledata->objbranchrule->scip_ !=
scip);
64 if( branchruledata->objbranchrule->iscloneable() )
83 assert(branchruledata !=
NULL);
84 assert(branchruledata->objbranchrule !=
NULL);
85 assert(branchruledata->objbranchrule->scip_ ==
scip);
88 SCIP_CALL( branchruledata->objbranchrule->scip_free(
scip, branchrule) );
91 if( branchruledata->deleteobject )
92 delete branchruledata->objbranchrule;
95 delete branchruledata;
109 assert(branchruledata !=
NULL);
110 assert(branchruledata->objbranchrule !=
NULL);
111 assert(branchruledata->objbranchrule->scip_ ==
scip);
114 SCIP_CALL( branchruledata->objbranchrule->scip_init(
scip, branchrule) );
127 assert(branchruledata !=
NULL);
128 assert(branchruledata->objbranchrule !=
NULL);
131 SCIP_CALL( branchruledata->objbranchrule->scip_exit(
scip, branchrule) );
144 assert(branchruledata !=
NULL);
145 assert(branchruledata->objbranchrule !=
NULL);
148 SCIP_CALL( branchruledata->objbranchrule->scip_initsol(
scip, branchrule) );
161 assert(branchruledata !=
NULL);
162 assert(branchruledata->objbranchrule !=
NULL);
165 SCIP_CALL( branchruledata->objbranchrule->scip_exitsol(
scip, branchrule) );
178 assert(branchruledata !=
NULL);
179 assert(branchruledata->objbranchrule !=
NULL);
182 SCIP_CALL( branchruledata->objbranchrule->scip_execlp(
scip, branchrule, allowaddcons, result) );
195 assert(branchruledata !=
NULL);
196 assert(branchruledata->objbranchrule !=
NULL);
199 SCIP_CALL( branchruledata->objbranchrule->scip_execext(
scip, branchrule, allowaddcons, result) );
212 assert(branchruledata !=
NULL);
213 assert(branchruledata->objbranchrule !=
NULL);
216 SCIP_CALL( branchruledata->objbranchrule->scip_execps(
scip, branchrule, allowaddcons, result) );
237 assert(scip !=
NULL);
238 assert(objbranchrule !=
NULL);
242 branchruledata->objbranchrule = objbranchrule;
243 branchruledata->deleteobject = deleteobject;
249 branchFreeObj, branchInitObj, branchExitObj, branchInitsolObj, branchExitsolObj,
250 branchExeclpObj, branchExecextObj, branchExecpsObj,
267 if( branchrule ==
NULL )
271 assert(branchruledata !=
NULL);
273 return branchruledata->objbranchrule;
285 assert(branchruledata !=
NULL);
287 return branchruledata->objbranchrule;
SCIP_BRANCHRULEDATA * SCIPbranchruleGetData(SCIP_BRANCHRULE *branchrule)
SCIP_RETCODE SCIPincludeBranchrule(SCIP *scip, const char *name, const char *desc, int priority, int maxdepth, SCIP_Real maxbounddist, SCIP_DECL_BRANCHCOPY((*branchcopy)), SCIP_DECL_BRANCHFREE((*branchfree)), SCIP_DECL_BRANCHINIT((*branchinit)), SCIP_DECL_BRANCHEXIT((*branchexit)), SCIP_DECL_BRANCHINITSOL((*branchinitsol)), SCIP_DECL_BRANCHEXITSOL((*branchexitsol)), SCIP_DECL_BRANCHEXECLP((*branchexeclp)), SCIP_DECL_BRANCHEXECEXT((*branchexecext)), SCIP_DECL_BRANCHEXECPS((*branchexecps)), SCIP_BRANCHRULEDATA *branchruledata)
static SCIP_DECL_BRANCHINIT(branchInitObj)
struct SCIP_BranchruleData SCIP_BRANCHRULEDATA
enum SCIP_Retcode SCIP_RETCODE
SCIP_BRANCHRULE * SCIPfindBranchrule(SCIP *scip, const char *name)
static SCIP_DECL_BRANCHEXECLP(branchExeclpObj)
static SCIP_DECL_BRANCHEXITSOL(branchExitsolObj)
static SCIP_DECL_BRANCHEXECEXT(branchExecextObj)
static SCIP_DECL_BRANCHFREE(branchFreeObj)
static SCIP_DECL_BRANCHEXIT(branchExitObj)
static SCIP_DECL_BRANCHEXECPS(branchExecpsObj)
C++ wrapper for branching rules.
static SCIP_DECL_BRANCHINITSOL(branchInitsolObj)
scip::ObjBranchrule * SCIPgetObjBranchrule(SCIP *scip, SCIP_BRANCHRULE *branchrule)
void SCIPbranchruleSetData(SCIP_BRANCHRULE *branchrule, SCIP_BRANCHRULEDATA *branchruledata)
scip::ObjBranchrule * SCIPfindObjBranchrule(SCIP *scip, const char *name)
static SCIP_DECL_BRANCHCOPY(branchCopyObj)
SCIP_RETCODE SCIPincludeObjBranchrule(SCIP *scip, scip::ObjBranchrule *objbranchrule, SCIP_Bool deleteobject)
C++ wrapper for branching rules.
const SCIP_Real scip_maxbounddist_