Scippy

SCIP

Solving Constraint Integer Programs

Detailed Description

public methods for conflict handlers

Functions

SCIP_EXPORT SCIP_RETCODE SCIPincludeConflicthdlr (SCIP *scip, const char *name, const char *desc, int priority, SCIP_DECL_CONFLICTCOPY((*conflictcopy)), SCIP_DECL_CONFLICTFREE((*conflictfree)), SCIP_DECL_CONFLICTINIT((*conflictinit)), SCIP_DECL_CONFLICTEXIT((*conflictexit)), SCIP_DECL_CONFLICTINITSOL((*conflictinitsol)), SCIP_DECL_CONFLICTEXITSOL((*conflictexitsol)), SCIP_DECL_CONFLICTEXEC((*conflictexec)), SCIP_CONFLICTHDLRDATA *conflicthdlrdata)
 
SCIP_EXPORT SCIP_RETCODE SCIPincludeConflicthdlrBasic (SCIP *scip, SCIP_CONFLICTHDLR **conflicthdlrptr, const char *name, const char *desc, int priority, SCIP_DECL_CONFLICTEXEC((*conflictexec)), SCIP_CONFLICTHDLRDATA *conflicthdlrdata)
 
SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrCopy (SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, SCIP_DECL_CONFLICTCOPY((*conflictcopy)))
 
SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrFree (SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, SCIP_DECL_CONFLICTFREE((*conflictfree)))
 
SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrInit (SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, SCIP_DECL_CONFLICTINIT((*conflictinit)))
 
SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrExit (SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, SCIP_DECL_CONFLICTEXIT((*conflictexit)))
 
SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrInitsol (SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, SCIP_DECL_CONFLICTINITSOL((*conflictinitsol)))
 
SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrExitsol (SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, SCIP_DECL_CONFLICTEXITSOL((*conflictexitsol)))
 
SCIP_EXPORT SCIP_CONFLICTHDLRSCIPfindConflicthdlr (SCIP *scip, const char *name)
 
SCIP_EXPORT SCIP_CONFLICTHDLR ** SCIPgetConflicthdlrs (SCIP *scip)
 
SCIP_EXPORT int SCIPgetNConflicthdlrs (SCIP *scip)
 
SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrPriority (SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, int priority)
 

Function Documentation

◆ SCIPincludeConflicthdlr()

SCIP_EXPORT SCIP_RETCODE SCIPincludeConflicthdlr ( SCIP scip,
const char *  name,
const char *  desc,
int  priority,
SCIP_DECL_CONFLICTCOPY((*conflictcopy))  ,
SCIP_DECL_CONFLICTFREE((*conflictfree))  ,
SCIP_DECL_CONFLICTINIT((*conflictinit))  ,
SCIP_DECL_CONFLICTEXIT((*conflictexit))  ,
SCIP_DECL_CONFLICTINITSOL((*conflictinitsol))  ,
SCIP_DECL_CONFLICTEXITSOL((*conflictexitsol))  ,
SCIP_DECL_CONFLICTEXEC((*conflictexec))  ,
SCIP_CONFLICTHDLRDATA conflicthdlrdata 
)

creates a conflict handler and includes it in SCIP

Note
method has all conflict handler callbacks as arguments and is thus changed every time a new callback is added in future releases; consider using SCIPincludeConflicthdlrBasic() and setter functions if you seek for a method which is less likely to change in future releases
Parameters
scipSCIP data structure
namename of conflict handler
descdescription of conflict handler
prioritypriority of the conflict handler
conflicthdlrdataconflict handler data

Definition at line 56 of file scip_conflict.c.

References FALSE, Scip::mem, Scip::messagehdlr, NULL, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIPcheckStage(), SCIPconflicthdlrCreate(), SCIPerrorMessage, SCIPfindConflicthdlr(), SCIPsetIncludeConflicthdlr(), Scip::set, SCIP_Mem::setmem, and TRUE.

◆ SCIPincludeConflicthdlrBasic()

SCIP_EXPORT SCIP_RETCODE SCIPincludeConflicthdlrBasic ( SCIP scip,
SCIP_CONFLICTHDLR **  conflicthdlrptr,
const char *  name,
const char *  desc,
int  priority,
SCIP_DECL_CONFLICTEXEC((*conflictexec))  ,
SCIP_CONFLICTHDLRDATA conflicthdlrdata 
)

creates a conflict handler and includes it in SCIP with its most fundamental callbacks. All non-fundamental (or optional) callbacks as, e.g., init and exit callbacks, will be set to NULL. Optional callbacks can be set via specific setter functions SCIPsetConflicthdlrCopy(), SCIPsetConflicthdlrFree(), SCIPsetConflicthdlrInit(), SCIPsetConflicthdlrExit(), SCIPsetConflicthdlrInitsol(), and SCIPsetConflicthdlrExitsol()

Note
if you want to set all callbacks with a single method call, consider using SCIPincludeConflicthdlr() instead
Parameters
scipSCIP data structure
conflicthdlrptrreference to a conflict handler pointer, or NULL
namename of conflict handler
descdescription of conflict handler
prioritypriority of the conflict handler
conflicthdlrdataconflict handler data

Definition at line 99 of file scip_conflict.c.

References FALSE, Scip::mem, Scip::messagehdlr, NULL, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIPcheckStage(), SCIPconflicthdlrCreate(), SCIPerrorMessage, SCIPfindConflicthdlr(), SCIPsetIncludeConflicthdlr(), Scip::set, SCIP_Mem::setmem, and TRUE.

Referenced by SCIP_DECL_NONLINCONSUPGD(), SCIPincludeConshdlrBounddisjunction(), SCIPincludeConshdlrIndicator(), and SCIPincludeConshdlrLogicor().

◆ SCIPsetConflicthdlrCopy()

SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrCopy ( SCIP scip,
SCIP_CONFLICTHDLR conflicthdlr,
SCIP_DECL_CONFLICTCOPY((*conflictcopy))   
)

set copy method of conflict handler

Parameters
scipSCIP data structure
conflicthdlrconflict handler

Definition at line 131 of file scip_conflict.c.

References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPconflicthdlrSetCopy(), and TRUE.

◆ SCIPsetConflicthdlrFree()

SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrFree ( SCIP scip,
SCIP_CONFLICTHDLR conflicthdlr,
SCIP_DECL_CONFLICTFREE((*conflictfree))   
)

set destructor of conflict handler

Parameters
scipSCIP data structure
conflicthdlrconflict handler

Definition at line 147 of file scip_conflict.c.

References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPconflicthdlrSetFree(), and TRUE.

Referenced by SCIPincludeConshdlrBounddisjunction(), and SCIPincludeConshdlrIndicator().

◆ SCIPsetConflicthdlrInit()

SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrInit ( SCIP scip,
SCIP_CONFLICTHDLR conflicthdlr,
SCIP_DECL_CONFLICTINIT((*conflictinit))   
)

set initialization method of conflict handler

Parameters
scipSCIP data structure
conflicthdlrconflict handler

Definition at line 163 of file scip_conflict.c.

References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPconflicthdlrSetInit(), and TRUE.

◆ SCIPsetConflicthdlrExit()

SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrExit ( SCIP scip,
SCIP_CONFLICTHDLR conflicthdlr,
SCIP_DECL_CONFLICTEXIT((*conflictexit))   
)

set deinitialization method of conflict handler

Parameters
scipSCIP data structure
conflicthdlrconflict handler

Definition at line 179 of file scip_conflict.c.

References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPconflicthdlrSetExit(), and TRUE.

◆ SCIPsetConflicthdlrInitsol()

SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrInitsol ( SCIP scip,
SCIP_CONFLICTHDLR conflicthdlr,
SCIP_DECL_CONFLICTINITSOL((*conflictinitsol))   
)

set solving process initialization method of conflict handler

Parameters
scipSCIP data structure
conflicthdlrconflict handler

Definition at line 195 of file scip_conflict.c.

References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPconflicthdlrSetInitsol(), and TRUE.

◆ SCIPsetConflicthdlrExitsol()

SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrExitsol ( SCIP scip,
SCIP_CONFLICTHDLR conflicthdlr,
SCIP_DECL_CONFLICTEXITSOL((*conflictexitsol))   
)

set solving process deinitialization method of conflict handler

Parameters
scipSCIP data structure
conflicthdlrconflict handler

Definition at line 211 of file scip_conflict.c.

References FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPconflicthdlrSetExitsol(), and TRUE.

◆ SCIPfindConflicthdlr()

SCIP_EXPORT SCIP_CONFLICTHDLR* SCIPfindConflicthdlr ( SCIP scip,
const char *  name 
)

returns the conflict handler of the given name, or NULL if not existing

Parameters
scipSCIP data structure
namename of conflict handler

Definition at line 227 of file scip_conflict.c.

References NULL, SCIPsetFindConflicthdlr(), and Scip::set.

Referenced by SCIPincludeConflicthdlr(), and SCIPincludeConflicthdlrBasic().

◆ SCIPgetConflicthdlrs()

SCIP_EXPORT SCIP_CONFLICTHDLR** SCIPgetConflicthdlrs ( SCIP scip)

returns the array of currently available conflict handlers

Parameters
scipSCIP data structure

Definition at line 240 of file scip_conflict.c.

References SCIP_Set::conflicthdlrs, NULL, SCIPsetSortConflicthdlrs(), and Scip::set.

Referenced by SCIP_DECL_DIALOGEXEC(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().

◆ SCIPgetNConflicthdlrs()

SCIP_EXPORT int SCIPgetNConflicthdlrs ( SCIP scip)

returns the number of currently available conflict handlers

Parameters
scipSCIP data structure

Definition at line 253 of file scip_conflict.c.

References SCIP_Set::nconflicthdlrs, NULL, and Scip::set.

Referenced by SCIP_DECL_DIALOGEXEC(), SCIPincludeDialogDefaultFix(), and SCIPincludeDialogDefaultSet().

◆ SCIPsetConflicthdlrPriority()

SCIP_EXPORT SCIP_RETCODE SCIPsetConflicthdlrPriority ( SCIP scip,
SCIP_CONFLICTHDLR conflicthdlr,
int  priority 
)

sets the priority of a conflict handler

Parameters
scipSCIP data structure
conflicthdlrconflict handler
prioritynew priority of the conflict handler

Definition at line 264 of file scip_conflict.c.

References NULL, SCIP_OKAY, SCIPconflicthdlrSetPriority(), and Scip::set.

Referenced by SCIP_DECL_PARAMCHGD().