methods to create, catch, process, and drop events during the solving process of SCIP
Events can only be caught during the operation on the transformed problem. Events on variables can only be caught for transformed variables. If you want to catch an event for an original variable, you have to get the corresponding transformed variable with a call to SCIPgetTransformedVar() and catch the event on the transformed variable.
SCIP_EVENTTYPE SCIPeventGetType | ( | SCIP_EVENT * | event | ) |
gets type of event
event | event |
Definition at line 959 of file event.c.
References NULL.
Referenced by SCIP_DECL_EVENTEXEC(), and SCIPclearConflictStore().
SCIP_VAR* SCIPeventGetVar | ( | SCIP_EVENT * | event | ) |
gets variable for a variable event (var added, var deleted, var fixed, objective value or domain change, domain hole added or removed)
gets variable for a variable event (var added, var deleted, var fixed, objective value or domain change)
event | event |
Definition at line 982 of file event.c.
References SCIP_Event::data, SCIP_Event::eventbdchg, SCIP_Event::eventhole, SCIP_Event::eventimpladd, SCIP_Event::eventobjchg, SCIP_Event::eventtype, SCIP_Event::eventvaradded, SCIP_Event::eventvardeleted, SCIP_Event::eventvarfixed, SCIP_Event::eventvarunlocked, NULL, SCIP_EVENTTYPE_GHOLEADDED, SCIP_EVENTTYPE_GHOLEREMOVED, SCIP_EVENTTYPE_GLBCHANGED, SCIP_EVENTTYPE_GUBCHANGED, SCIP_EVENTTYPE_IMPLADDED, SCIP_EVENTTYPE_LBRELAXED, SCIP_EVENTTYPE_LBTIGHTENED, SCIP_EVENTTYPE_LHOLEADDED, SCIP_EVENTTYPE_LHOLEREMOVED, SCIP_EVENTTYPE_OBJCHANGED, SCIP_EVENTTYPE_UBRELAXED, SCIP_EVENTTYPE_UBTIGHTENED, SCIP_EVENTTYPE_VARADDED, SCIP_EVENTTYPE_VARDELETED, SCIP_EVENTTYPE_VARFIXED, SCIP_EVENTTYPE_VARUNLOCKED, SCIPABORT, SCIPerrorMessage, SCIP_EventVarAdded::var, SCIP_EventVarDeleted::var, SCIP_EventVarFixed::var, SCIP_EventVarUnlocked::var, SCIP_EventObjChg::var, SCIP_EventBdChg::var, SCIP_EventHole::var, and SCIP_EventImplAdd::var.
Referenced by SCIP_DECL_EVENTEXEC().
SCIP_Real SCIPeventGetOldobj | ( | SCIP_EVENT * | event | ) |
gets old objective value for an objective value change event
event | event |
Definition at line 1104 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_OBJCHANGED, SCIP_INVALID, SCIPABORT, and SCIPerrorMessage.
Referenced by SCIP_DECL_EVENTEXEC().
SCIP_Real SCIPeventGetNewobj | ( | SCIP_EVENT * | event | ) |
gets new objective value for an objective value change event
event | event |
Definition at line 1121 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_OBJCHANGED, SCIP_INVALID, SCIPABORT, and SCIPerrorMessage.
Referenced by SCIP_DECL_EVENTEXEC().
SCIP_Real SCIPeventGetOldbound | ( | SCIP_EVENT * | event | ) |
gets old bound for a bound change event
event | event |
Definition at line 1138 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_GLBCHANGED, SCIP_EVENTTYPE_GUBCHANGED, SCIP_EVENTTYPE_LBRELAXED, SCIP_EVENTTYPE_LBTIGHTENED, SCIP_EVENTTYPE_UBRELAXED, SCIP_EVENTTYPE_UBTIGHTENED, SCIPABORT, and SCIPerrorMessage.
Referenced by SCIP_DECL_EVENTEXEC().
SCIP_Real SCIPeventGetNewbound | ( | SCIP_EVENT * | event | ) |
gets new bound for a bound change event
event | event |
Definition at line 1162 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_GLBCHANGED, SCIP_EVENTTYPE_GUBCHANGED, SCIP_EVENTTYPE_LBRELAXED, SCIP_EVENTTYPE_LBTIGHTENED, SCIP_EVENTTYPE_UBRELAXED, SCIP_EVENTTYPE_UBTIGHTENED, SCIPABORT, and SCIPerrorMessage.
Referenced by SCIP_DECL_EVENTEXEC().
SCIP_NODE* SCIPeventGetNode | ( | SCIP_EVENT * | event | ) |
gets node for a node or LP event
event | event |
Definition at line 1186 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_LPEVENT, SCIP_EVENTTYPE_NODEEVENT, SCIPABORT, and SCIPerrorMessage.
Referenced by SCIP_DECL_EVENTEXEC().
SCIP_SOL* SCIPeventGetSol | ( | SCIP_EVENT * | event | ) |
gets solution for a primal solution event
event | event |
Definition at line 1223 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_SOLEVENT, SCIPABORT, and SCIPerrorMessage.
Referenced by SCIP_DECL_EVENTEXEC(), and SCIPclearConflictStore().
SCIP_Real SCIPeventGetHoleLeft | ( | SCIP_EVENT * | event | ) |
gets the left bound of open interval in the hole
event | event |
Definition at line 1260 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_HOLECHANGED, SCIP_INVALID, SCIPABORT, and SCIPerrorMessage.
SCIP_Real SCIPeventGetHoleRight | ( | SCIP_EVENT * | event | ) |
gets the right bound of open interval in the hole
event | event |
Definition at line 1277 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_HOLECHANGED, SCIP_INVALID, SCIPABORT, and SCIPerrorMessage.
SCIP_ROW* SCIPeventGetRow | ( | SCIP_EVENT * | event | ) |
gets row for a row event
event | event |
Definition at line 1294 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_ROWADDEDLP, SCIP_EVENTTYPE_ROWADDEDSEPA, SCIP_EVENTTYPE_ROWCOEFCHANGED, SCIP_EVENTTYPE_ROWCONSTCHANGED, SCIP_EVENTTYPE_ROWDELETEDLP, SCIP_EVENTTYPE_ROWDELETEDSEPA, SCIP_EVENTTYPE_ROWSIDECHANGED, SCIPABORT, and SCIPerrorMessage.
SCIP_COL* SCIPeventGetRowCol | ( | SCIP_EVENT * | event | ) |
gets column for a row change coefficient event
event | event |
Definition at line 1324 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_ROWCOEFCHANGED, SCIPABORT, and SCIPerrorMessage.
SCIP_Real SCIPeventGetRowOldCoefVal | ( | SCIP_EVENT * | event | ) |
gets old coefficient value for a row change coefficient event
event | event |
Definition at line 1341 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_ROWCOEFCHANGED, SCIP_INVALID, SCIPABORT, and SCIPerrorMessage.
SCIP_Real SCIPeventGetRowNewCoefVal | ( | SCIP_EVENT * | event | ) |
gets new coefficient value for a row change coefficient event
event | event |
Definition at line 1358 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_ROWCOEFCHANGED, SCIP_INVALID, SCIPABORT, and SCIPerrorMessage.
SCIP_Real SCIPeventGetRowOldConstVal | ( | SCIP_EVENT * | event | ) |
gets old constant value for a row change constant event
event | event |
Definition at line 1375 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_ROWCONSTCHANGED, SCIP_INVALID, SCIPABORT, and SCIPerrorMessage.
SCIP_Real SCIPeventGetRowNewConstVal | ( | SCIP_EVENT * | event | ) |
gets new constant value for a row change constant event
event | event |
Definition at line 1392 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_ROWCONSTCHANGED, SCIP_INVALID, SCIPABORT, and SCIPerrorMessage.
SCIP_SIDETYPE SCIPeventGetRowSide | ( | SCIP_EVENT * | event | ) |
gets side for a row change side event
event | event |
Definition at line 1409 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_ROWSIDECHANGED, SCIP_SIDETYPE_LEFT, SCIPABORT, and SCIPerrorMessage.
SCIP_Real SCIPeventGetRowOldSideVal | ( | SCIP_EVENT * | event | ) |
gets old side value for a row change side event
event | event |
Definition at line 1426 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_ROWSIDECHANGED, SCIP_INVALID, SCIPABORT, and SCIPerrorMessage.
SCIP_Real SCIPeventGetRowNewSideVal | ( | SCIP_EVENT * | event | ) |
gets new side value for a row change side event
event | event |
Definition at line 1443 of file event.c.
References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_ROWSIDECHANGED, SCIP_INVALID, SCIPABORT, and SCIPerrorMessage.
SCIP_RETCODE SCIPcatchEvent | ( | SCIP * | scip, |
SCIP_EVENTTYPE | eventtype, | ||
SCIP_EVENTHDLR * | eventhdlr, | ||
SCIP_EVENTDATA * | eventdata, | ||
int * | filterpos | ||
) |
catches a global (not variable or row dependent) event
scip
is in one of the following stages:
scip | SCIP data structure |
eventtype | event type mask to select events to catch |
eventhdlr | event handler to process events with |
eventdata | event data to pass to the event handler when processing this event |
filterpos | pointer to store position of event filter entry, or NULL |
Definition at line 40434 of file scip.c.
References checkStage(), Scip::eventfilter, FALSE, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPeventfilterAdd(), Scip::set, and TRUE.
Referenced by applyCompletesol(), applyOfins(), SCIP_DECL_CONSINITSOL(), SCIP_DECL_EVENTINIT(), SCIP_DECL_EVENTINITSOL(), SCIP_DECL_HEUREXEC(), SCIP_DECL_PROBINITSOL(), SCIP_DECL_PROPINITSOL(), SCIPapplyProximity(), SCIPapplyRens(), and SCIPapplyZeroobj().
SCIP_RETCODE SCIPdropEvent | ( | SCIP * | scip, |
SCIP_EVENTTYPE | eventtype, | ||
SCIP_EVENTHDLR * | eventhdlr, | ||
SCIP_EVENTDATA * | eventdata, | ||
int | filterpos | ||
) |
drops a global event (stops to track event)
scip
is in one of the following stages:
scip | SCIP data structure |
eventtype | event type mask of dropped event |
eventhdlr | event handler to process events with |
eventdata | event data to pass to the event handler when processing this event |
filterpos | position of event filter entry returned by SCIPcatchEvent(), or -1 |
Definition at line 40468 of file scip.c.
References checkStage(), Scip::eventfilter, FALSE, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPeventfilterDel(), Scip::set, and TRUE.
Referenced by applyCompletesol(), applyOfins(), SCIP_DECL_CONSEXITSOL(), SCIP_DECL_EVENTEXEC(), SCIP_DECL_EVENTEXIT(), SCIP_DECL_EVENTEXITSOL(), SCIP_DECL_HEUREXEC(), SCIP_DECL_PROBEXITSOL(), SCIP_DECL_PROPEXITSOL(), SCIPapplyProximity(), SCIPapplyRens(), and SCIPapplyZeroobj().
SCIP_RETCODE SCIPcatchVarEvent | ( | SCIP * | scip, |
SCIP_VAR * | var, | ||
SCIP_EVENTTYPE | eventtype, | ||
SCIP_EVENTHDLR * | eventhdlr, | ||
SCIP_EVENTDATA * | eventdata, | ||
int * | filterpos | ||
) |
catches an objective value or domain change event on the given transformed variable
scip
is in one of the following stages:
scip | SCIP data structure |
var | transformed variable to catch event for |
eventtype | event type mask to select events to catch |
eventhdlr | event handler to process events with |
eventdata | event data to pass to the event handler when processing this event |
filterpos | pointer to store position of event filter entry, or NULL |
Definition at line 40502 of file scip.c.
References checkStage(), FALSE, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_EVENTTYPE_VARCHANGED, SCIP_INVALIDDATA, SCIP_OKAY, SCIPerrorMessage, SCIPvarCatchEvent(), SCIPvarGetName(), SCIPvarIsOriginal(), Scip::set, and TRUE.
Referenced by addCoef(), applyFixings(), branchruledataEnsureArraySize(), catchEvent(), catchEvents(), catchLhsVarEvents(), catchLinearVarEvents(), catchObjEvent(), catchQuadVarEvents(), catchRhsVarEvents(), catchVarEventCardinality(), catchVarEvents(), consdataCatchEvents(), consdataCatchWatchedEvents(), consdataCreate(), consdataSwitchWatchedvars(), createSubSCIP(), handleNewVariableSOS1(), handleNewVariableSOS2(), heurdataEnsureArraySize(), presolRoundConsSOS1(), presolRoundIndicator(), presolRoundSOS2(), SCIP_DECL_CONSINITPRE(), SCIP_DECL_CONSTRANS(), SCIP_DECL_EVENTEXEC(), SCIP_DECL_EVENTINIT(), SCIP_DECL_EVENTINITSOL(), SCIP_DECL_EXPRGRAPHVARADDED(), SCIP_DECL_HEUREXEC(), SCIPcreateConsLogicor(), SCIPsetBinaryVarIndicator(), setUpEvents(), and switchWatchedvars().
SCIP_RETCODE SCIPdropVarEvent | ( | SCIP * | scip, |
SCIP_VAR * | var, | ||
SCIP_EVENTTYPE | eventtype, | ||
SCIP_EVENTHDLR * | eventhdlr, | ||
SCIP_EVENTDATA * | eventdata, | ||
int | filterpos | ||
) |
drops an objective value or domain change event (stops to track event) on the given transformed variable
scip
is in one of the following stages:
scip | SCIP data structure |
var | transformed variable to drop event for |
eventtype | event type mask of dropped event |
eventhdlr | event handler to process events with |
eventdata | event data to pass to the event handler when processing this event |
filterpos | position of event filter entry returned by SCIPcatchVarEvent(), or -1 |
Definition at line 40548 of file scip.c.
References checkStage(), FALSE, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_INVALIDDATA, SCIP_OKAY, SCIPerrorMessage, SCIPvarDropEvent(), SCIPvarGetName(), SCIPvarIsOriginal(), Scip::set, and TRUE.
Referenced by applyFixings(), consdataDropEvents(), consdataDropWatchedEvents(), consdataSwitchWatchedvars(), delCoefPos(), deleteVarSOS1(), deleteVarSOS2(), dropAndFreeEvents(), dropEvent(), dropEvents(), dropLhsVarEvents(), dropLinearVarEvents(), dropObjEvent(), dropQuadVarEvents(), dropRhsVarEvents(), dropVarEventCardinality(), dropVarEvents(), freeSubSCIP(), heurdataFreeArrays(), presolRoundConsSOS1(), presolRoundIndicator(), presolRoundSOS2(), SCIP_DECL_BRANCHEXITSOL(), SCIP_DECL_CONSDELETE(), SCIP_DECL_CONSEXITPRE(), SCIP_DECL_EVENTEXITSOL(), SCIP_DECL_EXPRGRAPHVARREMOVE(), SCIP_DECL_HEUREXEC(), and switchWatchedvars().
SCIP_RETCODE SCIPcatchRowEvent | ( | SCIP * | scip, |
SCIP_ROW * | row, | ||
SCIP_EVENTTYPE | eventtype, | ||
SCIP_EVENTHDLR * | eventhdlr, | ||
SCIP_EVENTDATA * | eventdata, | ||
int * | filterpos | ||
) |
catches a row coefficient, constant, or side change event on the given row
scip
is in one of the following stages:
scip | SCIP data structure |
row | linear row to catch event for |
eventtype | event type mask to select events to catch |
eventhdlr | event handler to process events with |
eventdata | event data to pass to the event handler when processing this event |
filterpos | pointer to store position of event filter entry, or NULL |
Definition at line 40588 of file scip.c.
References checkStage(), FALSE, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_EVENTTYPE_ROWCHANGED, SCIP_INVALIDDATA, SCIP_OKAY, SCIPerrorMessage, SCIProwCatchEvent(), Scip::set, and TRUE.
SCIP_RETCODE SCIPdropRowEvent | ( | SCIP * | scip, |
SCIP_ROW * | row, | ||
SCIP_EVENTTYPE | eventtype, | ||
SCIP_EVENTHDLR * | eventhdlr, | ||
SCIP_EVENTDATA * | eventdata, | ||
int | filterpos | ||
) |
drops a row coefficient, constant, or side change event (stops to track event) on the given row
scip
is in one of the following stages:
scip | SCIP data structure |
row | linear row to drop event for |
eventtype | event type mask of dropped event |
eventhdlr | event handler to process events with |
eventdata | event data to pass to the event handler when processing this event |
filterpos | position of event filter entry returned by SCIPcatchVarEvent(), or -1 |
Definition at line 40628 of file scip.c.
References checkStage(), FALSE, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIProwDropEvent(), Scip::set, and TRUE.