Scippy

    SCIP

    Solving Constraint Integer Programs

    event.h File Reference

    Detailed Description

    internal methods for managing events

    Author
    Tobias Achterberg

    Definition in file event.h.

    #include "scip/def.h"
    #include "blockmemshell/memory.h"
    #include "scip/type_retcode.h"
    #include "scip/type_set.h"
    #include "scip/type_event.h"
    #include "scip/type_lp.h"
    #include "scip/type_var.h"
    #include "scip/type_sol.h"
    #include "scip/type_primal.h"
    #include "scip/type_branch.h"
    #include "scip/pub_event.h"

    Go to the source code of this file.

    Functions

    SCIP_RETCODE SCIPeventhdlrCopyInclude (SCIP_EVENTHDLR *eventhdlr, SCIP_SET *set)
     
    SCIP_RETCODE SCIPeventhdlrCreate (SCIP_EVENTHDLR **eventhdlr, SCIP_SET *set, const char *name, const char *desc, SCIP_DECL_EVENTCOPY((*eventcopy)), SCIP_DECL_EVENTFREE((*eventfree)), SCIP_DECL_EVENTINIT((*eventinit)), SCIP_DECL_EVENTEXIT((*eventexit)), SCIP_DECL_EVENTINITSOL((*eventinitsol)), SCIP_DECL_EVENTEXITSOL((*eventexitsol)), SCIP_DECL_EVENTDELETE((*eventdelete)), SCIP_DECL_EVENTEXEC((*eventexec)), SCIP_EVENTHDLRDATA *eventhdlrdata)
     
    SCIP_RETCODE SCIPeventhdlrFree (SCIP_EVENTHDLR **eventhdlr, SCIP_SET *set)
     
    SCIP_RETCODE SCIPeventhdlrInit (SCIP_EVENTHDLR *eventhdlr, SCIP_SET *set)
     
    SCIP_RETCODE SCIPeventhdlrExit (SCIP_EVENTHDLR *eventhdlr, SCIP_SET *set)
     
    SCIP_RETCODE SCIPeventhdlrInitsol (SCIP_EVENTHDLR *eventhdlr, SCIP_SET *set)
     
    SCIP_RETCODE SCIPeventhdlrExitsol (SCIP_EVENTHDLR *eventhdlr, SCIP_SET *set)
     
    SCIP_RETCODE SCIPeventhdlrExec (SCIP_EVENTHDLR *eventhdlr, SCIP_SET *set, SCIP_EVENT *event, SCIP_EVENTDATA *eventdata)
     
    void SCIPeventhdlrSetCopy (SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTCOPY((*eventcopy)))
     
    void SCIPeventhdlrSetFree (SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTFREE((*eventfree)))
     
    void SCIPeventhdlrSetInit (SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTINIT((*eventinit)))
     
    void SCIPeventhdlrSetExit (SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTEXIT((*eventexit)))
     
    void SCIPeventhdlrSetInitsol (SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTINITSOL((*eventinitsol)))
     
    void SCIPeventhdlrSetExitsol (SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTEXITSOL((*eventexitsol)))
     
    void SCIPeventhdlrSetDelete (SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTDELETE((*eventdelete)))
     
    void SCIPeventhdlrEnableOrDisableClocks (SCIP_EVENTHDLR *eventhdlr, SCIP_Bool enable)
     
    SCIP_RETCODE SCIPeventCreateSync (SCIP_EVENT **event, BMS_BLKMEM *blkmem)
     
    SCIP_RETCODE SCIPeventCreateVarAdded (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var)
     
    SCIP_RETCODE SCIPeventCreateVarDeleted (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var)
     
    SCIP_RETCODE SCIPeventCreateVarFixed (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var)
     
    SCIP_RETCODE SCIPeventCreateVarUnlocked (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var)
     
    SCIP_RETCODE SCIPeventCreateObjChanged (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var, SCIP_Real oldobj, SCIP_Real newobj)
     
    SCIP_RETCODE SCIPeventCreateGlbChanged (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var, SCIP_Real oldbound, SCIP_Real newbound)
     
    SCIP_RETCODE SCIPeventCreateGubChanged (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var, SCIP_Real oldbound, SCIP_Real newbound)
     
    SCIP_RETCODE SCIPeventCreateLbChanged (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var, SCIP_Real oldbound, SCIP_Real newbound)
     
    SCIP_RETCODE SCIPeventCreateUbChanged (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var, SCIP_Real oldbound, SCIP_Real newbound)
     
    SCIP_RETCODE SCIPeventAddExactBdChg (SCIP_EVENT *event, BMS_BLKMEM *blkmem, SCIP_RATIONAL *oldbound, SCIP_RATIONAL *newbound)
     
    SCIP_RETCODE SCIPeventAddExactObjChg (SCIP_EVENT *event, BMS_BLKMEM *blkmem, SCIP_RATIONAL *oldobj, SCIP_RATIONAL *newobj)
     
    SCIP_RETCODE SCIPeventCreateGholeAdded (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var, SCIP_Real left, SCIP_Real right)
     
    SCIP_RETCODE SCIPeventCreateGholeRemoved (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var, SCIP_Real left, SCIP_Real right)
     
    SCIP_RETCODE SCIPeventCreateLholeAdded (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var, SCIP_Real left, SCIP_Real right)
     
    SCIP_RETCODE SCIPeventCreateLholeRemoved (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var, SCIP_Real left, SCIP_Real right)
     
    SCIP_RETCODE SCIPeventCreateImplAdded (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var)
     
    SCIP_RETCODE SCIPeventCreateTypeChanged (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var, SCIP_VARTYPE oldtype, SCIP_VARTYPE newtype)
     
    SCIP_RETCODE SCIPeventCreateImplTypeChanged (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_VAR *var, SCIP_IMPLINTTYPE oldtype, SCIP_IMPLINTTYPE newtype)
     
    SCIP_RETCODE SCIPeventCreateRowAddedSepa (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_ROW *row)
     
    SCIP_RETCODE SCIPeventCreateRowDeletedSepa (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_ROW *row)
     
    SCIP_RETCODE SCIPeventCreateRowAddedLP (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_ROW *row)
     
    SCIP_RETCODE SCIPeventCreateRowDeletedLP (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_ROW *row)
     
    SCIP_RETCODE SCIPeventCreateRowCoefChanged (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_ROW *row, SCIP_COL *col, SCIP_Real oldval, SCIP_Real newval)
     
    SCIP_RETCODE SCIPeventCreateRowConstChanged (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_ROW *row, SCIP_Real oldval, SCIP_Real newval)
     
    SCIP_RETCODE SCIPeventCreateRowSideChanged (SCIP_EVENT **event, BMS_BLKMEM *blkmem, SCIP_ROW *row, SCIP_SIDETYPE side, SCIP_Real oldval, SCIP_Real newval)
     
    SCIP_RETCODE SCIPeventFree (SCIP_EVENT **event, BMS_BLKMEM *blkmem)
     
    SCIP_RETCODE SCIPeventChgType (SCIP_EVENT *event, SCIP_EVENTTYPE eventtype)
     
    SCIP_RETCODE SCIPeventChgVar (SCIP_EVENT *event, SCIP_VAR *var)
     
    SCIP_RETCODE SCIPeventChgNode (SCIP_EVENT *event, SCIP_NODE *node)
     
    SCIP_RETCODE SCIPeventChgSol (SCIP_EVENT *event, SCIP_SOL *sol)
     
    SCIP_RETCODE SCIPeventProcess (SCIP_EVENT *event, SCIP_SET *set, SCIP_PRIMAL *primal, SCIP_LP *lp, SCIP_BRANCHCAND *branchcand, SCIP_EVENTFILTER *eventfilter)
     
    SCIP_RETCODE SCIPeventfilterCreate (SCIP_EVENTFILTER **eventfilter, BMS_BLKMEM *blkmem)
     
    SCIP_RETCODE SCIPeventfilterFree (SCIP_EVENTFILTER **eventfilter, BMS_BLKMEM *blkmem, SCIP_SET *set)
     
    SCIP_RETCODE SCIPeventfilterAdd (SCIP_EVENTFILTER *eventfilter, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_EVENTTYPE eventtype, SCIP_EVENTHDLR *eventhdlr, SCIP_EVENTDATA *eventdata, int *filterpos)
     
    SCIP_RETCODE SCIPeventfilterDel (SCIP_EVENTFILTER *eventfilter, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_EVENTTYPE eventtype, SCIP_EVENTHDLR *eventhdlr, SCIP_EVENTDATA *eventdata, int filterpos)
     
    SCIP_RETCODE SCIPeventfilterProcess (SCIP_EVENTFILTER *eventfilter, SCIP_SET *set, SCIP_EVENT *event)
     
    SCIP_RETCODE SCIPeventqueueCreate (SCIP_EVENTQUEUE **eventqueue)
     
    SCIP_RETCODE SCIPeventqueueFree (SCIP_EVENTQUEUE **eventqueue)
     
    SCIP_RETCODE SCIPeventqueueAdd (SCIP_EVENTQUEUE *eventqueue, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_PRIMAL *primal, SCIP_LP *lp, SCIP_BRANCHCAND *branchcand, SCIP_EVENTFILTER *eventfilter, SCIP_EVENT **event)
     
    SCIP_RETCODE SCIPeventqueueDelay (SCIP_EVENTQUEUE *eventqueue)
     
    SCIP_RETCODE SCIPeventqueueProcess (SCIP_EVENTQUEUE *eventqueue, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_PRIMAL *primal, SCIP_LP *lp, SCIP_BRANCHCAND *branchcand, SCIP_EVENTFILTER *eventfilter)
     
    SCIP_Bool SCIPeventqueueIsDelayed (SCIP_EVENTQUEUE *eventqueue)
     

    Function Documentation

    ◆ SCIPeventhdlrCopyInclude()

    SCIP_RETCODE SCIPeventhdlrCopyInclude ( SCIP_EVENTHDLR eventhdlr,
    SCIP_SET set 
    )

    copies the given event handler to a new scip

    Parameters
    eventhdlrevent handler
    setSCIP_SET of SCIP to copy to

    Definition at line 62 of file event.c.

    References NULL, SCIP_CALL, SCIP_OKAY, SCIPeventhdlrGetName(), and SCIPsetDebugMsg.

    Referenced by SCIPsetCopyPlugins().

    ◆ SCIPeventhdlrCreate()

    SCIP_RETCODE SCIPeventhdlrCreate ( SCIP_EVENTHDLR **  eventhdlr,
    SCIP_SET set,
    const char *  name,
    const char *  desc,
    SCIP_DECL_EVENTCOPY((*eventcopy))  ,
    SCIP_DECL_EVENTFREE((*eventfree))  ,
    SCIP_DECL_EVENTINIT((*eventinit))  ,
    SCIP_DECL_EVENTEXIT((*eventexit))  ,
    SCIP_DECL_EVENTINITSOL((*eventinitsol))  ,
    SCIP_DECL_EVENTEXITSOL((*eventexitsol))  ,
    SCIP_DECL_EVENTDELETE((*eventdelete))  ,
    SCIP_DECL_EVENTEXEC((*eventexec))  ,
    SCIP_EVENTHDLRDATA eventhdlrdata 
    )

    creates an event handler

    Parameters
    eventhdlrpointer to event handler data structure
    setglobal SCIP settings
    namename of event handler
    descdescription of event handler
    eventhdlrdataevent handler data

    Definition at line 195 of file event.c.

    References doEventhdlrCreate(), NULL, SCIP_CALL_FINALLY, SCIP_OKAY, and SCIPeventhdlrFree().

    Referenced by SCIPconflictstoreCreate(), SCIPincludeEventhdlr(), SCIPincludeEventhdlrBasic(), SCIPnlpInclude(), and SCIPreoptCreate().

    ◆ SCIPeventhdlrFree()

    SCIP_RETCODE SCIPeventhdlrFree ( SCIP_EVENTHDLR **  eventhdlr,
    SCIP_SET set 
    )

    calls destructor and frees memory of event handler

    Parameters
    eventhdlrpointer to event handler data structure
    setglobal SCIP settings

    Definition at line 221 of file event.c.

    References BMSfreeMemory, BMSfreeMemoryArrayNull, NULL, SCIP_CALL, SCIP_OKAY, and SCIPclockFree().

    Referenced by SCIPeventhdlrCreate().

    ◆ SCIPeventhdlrInit()

    SCIP_RETCODE SCIPeventhdlrInit ( SCIP_EVENTHDLR eventhdlr,
    SCIP_SET set 
    )

    initializes event handler

    Parameters
    eventhdlrevent handler for this event
    setglobal SCIP settings

    Definition at line 252 of file event.c.

    References SCIP_Eventhdlr::eventtime, SCIP_Eventhdlr::initialized, SCIP_Eventhdlr::name, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockReset(), SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIP_Eventhdlr::setuptime, and TRUE.

    ◆ SCIPeventhdlrExit()

    SCIP_RETCODE SCIPeventhdlrExit ( SCIP_EVENTHDLR eventhdlr,
    SCIP_SET set 
    )

    calls exit method of event handler

    Parameters
    eventhdlrevent handler for this event
    setglobal SCIP settings

    Definition at line 288 of file event.c.

    References FALSE, SCIP_Eventhdlr::initialized, SCIP_Eventhdlr::name, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, and SCIP_Eventhdlr::setuptime.

    ◆ SCIPeventhdlrInitsol()

    SCIP_RETCODE SCIPeventhdlrInitsol ( SCIP_EVENTHDLR eventhdlr,
    SCIP_SET set 
    )

    informs event handler that the branch and bound process is being started

    Parameters
    eventhdlrevent handler
    setglobal SCIP settings

    Definition at line 318 of file event.c.

    References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Eventhdlr::setuptime.

    ◆ SCIPeventhdlrExitsol()

    SCIP_RETCODE SCIPeventhdlrExitsol ( SCIP_EVENTHDLR eventhdlr,
    SCIP_SET set 
    )

    informs event handler that the branch and bound process data is being freed

    Parameters
    eventhdlrevent handler
    setglobal SCIP settings

    Definition at line 342 of file event.c.

    References NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Eventhdlr::setuptime.

    ◆ SCIPeventhdlrExec()

    SCIP_RETCODE SCIPeventhdlrExec ( SCIP_EVENTHDLR eventhdlr,
    SCIP_SET set,
    SCIP_EVENT event,
    SCIP_EVENTDATA eventdata 
    )

    calls execution method of event handler

    Parameters
    eventhdlrevent handler
    setglobal SCIP settings
    eventevent to call event handler with
    eventdatauser data for the issued event

    Definition at line 366 of file event.c.

    References SCIP_Eventhdlr::eventtime, SCIP_Event::eventtype, SCIP_Eventhdlr::name, NULL, SCIP_CALL, SCIP_EVENTTYPE_FORMAT, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIPsetDebugMsg.

    Referenced by SCIPeventfilterProcess().

    ◆ SCIPeventhdlrSetCopy()

    void SCIPeventhdlrSetCopy ( SCIP_EVENTHDLR eventhdlr,
    SCIP_DECL_EVENTCOPY((*eventcopy))   
    )

    callback setter methods of event handlers sets copy callback for all events of this event handler

    sets copy callback for all events of this event handler

    Parameters
    eventhdlrevent handler

    Definition at line 427 of file event.c.

    References NULL.

    Referenced by SCIPsetEventhdlrCopy().

    ◆ SCIPeventhdlrSetFree()

    void SCIPeventhdlrSetFree ( SCIP_EVENTHDLR eventhdlr,
    SCIP_DECL_EVENTFREE((*eventfree))   
    )

    sets destructor callback of this event handler

    Parameters
    eventhdlrevent handler

    Definition at line 438 of file event.c.

    References NULL.

    Referenced by SCIPsetEventhdlrFree().

    ◆ SCIPeventhdlrSetInit()

    void SCIPeventhdlrSetInit ( SCIP_EVENTHDLR eventhdlr,
    SCIP_DECL_EVENTINIT((*eventinit))   
    )

    sets initialization callback of this event handler

    Parameters
    eventhdlrevent handler

    Definition at line 449 of file event.c.

    References NULL.

    Referenced by SCIPsetEventhdlrInit().

    ◆ SCIPeventhdlrSetExit()

    void SCIPeventhdlrSetExit ( SCIP_EVENTHDLR eventhdlr,
    SCIP_DECL_EVENTEXIT((*eventexit))   
    )

    sets deinitialization callback of this event handler

    Parameters
    eventhdlrevent handler

    Definition at line 460 of file event.c.

    References NULL.

    Referenced by SCIPsetEventhdlrExit().

    ◆ SCIPeventhdlrSetInitsol()

    void SCIPeventhdlrSetInitsol ( SCIP_EVENTHDLR eventhdlr,
    SCIP_DECL_EVENTINITSOL((*eventinitsol))   
    )

    sets solving process initialization callback of this event handler

    Parameters
    eventhdlrevent handler

    Definition at line 471 of file event.c.

    References NULL.

    Referenced by SCIPsetEventhdlrInitsol().

    ◆ SCIPeventhdlrSetExitsol()

    void SCIPeventhdlrSetExitsol ( SCIP_EVENTHDLR eventhdlr,
    SCIP_DECL_EVENTEXITSOL((*eventexitsol))   
    )

    sets solving process deinitialization callback of this event handler

    Parameters
    eventhdlrevent handler

    Definition at line 482 of file event.c.

    References NULL.

    Referenced by SCIPsetEventhdlrExitsol().

    ◆ SCIPeventhdlrSetDelete()

    void SCIPeventhdlrSetDelete ( SCIP_EVENTHDLR eventhdlr,
    SCIP_DECL_EVENTDELETE((*eventdelete))   
    )

    sets callback to free specific event data

    Parameters
    eventhdlrevent handler

    Definition at line 493 of file event.c.

    References NULL.

    Referenced by SCIPsetEventhdlrDelete().

    ◆ SCIPeventhdlrEnableOrDisableClocks()

    void SCIPeventhdlrEnableOrDisableClocks ( SCIP_EVENTHDLR eventhdlr,
    SCIP_Bool  enable 
    )

    enables or disables all clocks of eventhdlr, depending on the value of the flag

    Parameters
    eventhdlrthe event handler for which all clocks should be enabled or disabled
    enableshould the clocks of the event handler be enabled?

    Definition at line 514 of file event.c.

    References SCIP_Eventhdlr::eventtime, NULL, SCIPclockEnableOrDisable(), and SCIP_Eventhdlr::setuptime.

    ◆ SCIPeventCreateSync()

    SCIP_RETCODE SCIPeventCreateSync ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem 
    )

    creates a synchronization event

    Parameters
    eventpointer to store the event
    blkmemblock memory

    Definition at line 555 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_SYNC, and SCIP_OKAY.

    Referenced by SCIPincrementConcurrentTime().

    ◆ SCIPeventCreateVarAdded()

    SCIP_RETCODE SCIPeventCreateVarAdded ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var 
    )

    creates an event for an addition of a variable to the problem

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable that was added to the problem

    Definition at line 598 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_VARADDED, and SCIP_OKAY.

    Referenced by SCIPprobAddVar().

    ◆ SCIPeventCreateVarDeleted()

    SCIP_RETCODE SCIPeventCreateVarDeleted ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var 
    )

    creates an event for a deletion of a variable from the problem

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable that is to be deleted from the problem

    Definition at line 616 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_VARDELETED, and SCIP_OKAY.

    Referenced by SCIPprobDelVar().

    ◆ SCIPeventCreateVarFixed()

    SCIP_RETCODE SCIPeventCreateVarFixed ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var 
    )

    creates an event for a fixing of a variable

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable that was fixed

    Definition at line 634 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_VARFIXED, SCIP_OKAY, SCIP_VARSTATUS_AGGREGATED, SCIP_VARSTATUS_FIXED, SCIP_VARSTATUS_MULTAGGR, SCIP_VARSTATUS_NEGATED, and SCIPvarGetStatus().

    Referenced by varEventVarFixed().

    ◆ SCIPeventCreateVarUnlocked()

    SCIP_RETCODE SCIPeventCreateVarUnlocked ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var 
    )

    creates an event for a change in the number of locks of a variable down to zero or one

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable that changed the number of locks

    Definition at line 656 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_VARUNLOCKED, SCIP_OKAY, SCIP_VARSTATUS_COLUMN, SCIP_VARSTATUS_FIXED, SCIP_VARSTATUS_LOOSE, and SCIPvarGetStatus().

    Referenced by varEventVarUnlocked().

    ◆ SCIPeventCreateObjChanged()

    SCIP_RETCODE SCIPeventCreateObjChanged ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var,
    SCIP_Real  oldobj,
    SCIP_Real  newobj 
    )

    creates an event for a change in the objective value of a variable

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable whose objective value changed
    oldobjold objective value before value changed
    newobjnew objective value after value changed

    Definition at line 677 of file event.c.

    References BMSallocBlockMemory, SCIP_Var::data, SCIP_Var::exactdata, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_OBJCHANGED, and SCIP_OKAY.

    Referenced by varEventObjChanged(), and varEventObjChangedExact().

    ◆ SCIPeventCreateGlbChanged()

    SCIP_RETCODE SCIPeventCreateGlbChanged ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var,
    SCIP_Real  oldbound,
    SCIP_Real  newbound 
    )

    creates an event for a change in the global lower bound of a variable

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable whose bound changed
    oldboundold bound before bound changed
    newboundnew bound after bound changed

    Definition at line 702 of file event.c.

    References BMSallocBlockMemory, SCIP_Var::data, SCIP_Var::exactdata, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_GLBCHANGED, and SCIP_OKAY.

    Referenced by varEventGlbChanged(), and varEventGlbChangedExact().

    ◆ SCIPeventCreateGubChanged()

    SCIP_RETCODE SCIPeventCreateGubChanged ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var,
    SCIP_Real  oldbound,
    SCIP_Real  newbound 
    )

    creates an event for a change in the global upper bound of a variable

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable whose bound changed
    oldboundold bound before bound changed
    newboundnew bound after bound changed

    Definition at line 727 of file event.c.

    References BMSallocBlockMemory, SCIP_Var::data, SCIP_Var::exactdata, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_GUBCHANGED, and SCIP_OKAY.

    Referenced by varEventGubChanged(), and varEventGubChangedExact().

    ◆ SCIPeventCreateLbChanged()

    SCIP_RETCODE SCIPeventCreateLbChanged ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var,
    SCIP_Real  oldbound,
    SCIP_Real  newbound 
    )

    creates an event for a change in the lower bound of a variable

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable whose bound changed
    oldboundold bound before bound changed
    newboundnew bound after bound changed

    Definition at line 752 of file event.c.

    References BMSallocBlockMemory, SCIP_Var::data, SCIP_Var::exactdata, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_LBRELAXED, SCIP_EVENTTYPE_LBTIGHTENED, and SCIP_OKAY.

    Referenced by varEventLbChanged(), and varEventLbChangedExact().

    ◆ SCIPeventCreateUbChanged()

    SCIP_RETCODE SCIPeventCreateUbChanged ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var,
    SCIP_Real  oldbound,
    SCIP_Real  newbound 
    )

    creates an event for a change in the upper bound of a variable

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable whose bound changed
    oldboundold bound before bound changed
    newboundnew bound after bound changed

    Definition at line 780 of file event.c.

    References BMSallocBlockMemory, SCIP_Var::data, SCIP_Var::exactdata, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_UBRELAXED, SCIP_EVENTTYPE_UBTIGHTENED, and SCIP_OKAY.

    Referenced by varEventUbChanged(), and varEventUbChangedExact().

    ◆ SCIPeventAddExactBdChg()

    SCIP_RETCODE SCIPeventAddExactBdChg ( SCIP_EVENT event,
    BMS_BLKMEM blkmem,
    SCIP_RATIONAL oldbound,
    SCIP_RATIONAL newbound 
    )

    adds the data for the exact changes to existing bound event

    Parameters
    eventthe event
    blkmemblock memory
    oldboundold bound before bound changed
    newboundnew bound after bound changed

    Definition at line 808 of file event.c.

    References SCIP_Event::data, SCIP_Event::eventbdchg, SCIP_EventBdChg::newboundexact, NULL, SCIP_EventBdChg::oldboundexact, SCIP_CALL, SCIP_EVENTTYPE_BOUNDCHANGED, SCIP_EVENTTYPE_GBDCHANGED, SCIP_OKAY, SCIPrationalCopyBlock(), and SCIPrationalIsEQ().

    Referenced by SCIPeventqueueAdd(), varEventGlbChangedExact(), varEventGubChangedExact(), varEventLbChangedExact(), and varEventUbChangedExact().

    ◆ SCIPeventAddExactObjChg()

    SCIP_RETCODE SCIPeventAddExactObjChg ( SCIP_EVENT event,
    BMS_BLKMEM blkmem,
    SCIP_RATIONAL oldobj,
    SCIP_RATIONAL newobj 
    )

    adds the data for the exact changes to existing obj event

    Parameters
    eventthe event
    blkmemblock memory
    oldobjold obj before change
    newobjnew obj after change

    Definition at line 827 of file event.c.

    References SCIP_Event::data, SCIP_Event::eventobjchg, SCIP_EventObjChg::newobjexact, NULL, SCIP_EventObjChg::oldobjexact, SCIP_CALL, SCIP_OKAY, SCIPrationalCopyBlock(), and SCIPrationalIsEQ().

    Referenced by varEventObjChangedExact().

    ◆ SCIPeventCreateGholeAdded()

    SCIP_RETCODE SCIPeventCreateGholeAdded ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var,
    SCIP_Real  left,
    SCIP_Real  right 
    )

    creates an event for an addition of a global domain hole to a variable

    creates an event for an addition of a domain hole to a variable

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable whose bound changed
    leftleft bound of open interval in new hole
    rightright bound of open interval in new hole

    Definition at line 845 of file event.c.

    References BMSallocBlockMemory, SCIP_Var::data, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_GHOLEADDED, and SCIP_OKAY.

    Referenced by varEventGholeAdded().

    ◆ SCIPeventCreateGholeRemoved()

    SCIP_RETCODE SCIPeventCreateGholeRemoved ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var,
    SCIP_Real  left,
    SCIP_Real  right 
    )

    creates an event for removing a global domain hole of a variable

    creates an event for removing a domain hole of a variable

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable whose bound changed
    leftleft bound of open interval in hole
    rightright bound of open interval in hole

    Definition at line 867 of file event.c.

    References BMSallocBlockMemory, SCIP_Var::data, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_GHOLEREMOVED, and SCIP_OKAY.

    ◆ SCIPeventCreateLholeAdded()

    SCIP_RETCODE SCIPeventCreateLholeAdded ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var,
    SCIP_Real  left,
    SCIP_Real  right 
    )

    creates an event for an addition of a local domain hole to a variable

    creates an event for an addition of a domain hole to a variable

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable whose bound changed
    leftleft bound of open interval in new hole
    rightright bound of open interval in new hole

    Definition at line 889 of file event.c.

    References BMSallocBlockMemory, SCIP_Var::data, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_LHOLEADDED, and SCIP_OKAY.

    ◆ SCIPeventCreateLholeRemoved()

    SCIP_RETCODE SCIPeventCreateLholeRemoved ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var,
    SCIP_Real  left,
    SCIP_Real  right 
    )

    creates an event for removing a local domain hole of a variable

    creates an event for removing a domain hole of a variable

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable whose bound changed
    leftleft bound of open interval in hole
    rightright bound of open interval in hole

    Definition at line 911 of file event.c.

    References BMSallocBlockMemory, SCIP_Var::data, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_LHOLEREMOVED, and SCIP_OKAY.

    ◆ SCIPeventCreateImplAdded()

    SCIP_RETCODE SCIPeventCreateImplAdded ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var 
    )

    creates an event for an addition to the variable's implications list, clique or variable bounds information

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable that was fixed

    Definition at line 933 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_IMPLADDED, SCIP_OKAY, SCIP_VARSTATUS_COLUMN, SCIP_VARSTATUS_LOOSE, and SCIPvarGetStatus().

    Referenced by SCIPcliquetableCleanup(), and varEventImplAdded().

    ◆ SCIPeventCreateTypeChanged()

    SCIP_RETCODE SCIPeventCreateTypeChanged ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var,
    SCIP_VARTYPE  oldtype,
    SCIP_VARTYPE  newtype 
    )

    creates an event for changing the type of a variable

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable whose type changed
    oldtypeold variable type
    newtypenew variable type

    Definition at line 952 of file event.c.

    References BMSallocBlockMemory, SCIP_Var::data, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_TYPECHANGED, and SCIP_OKAY.

    Referenced by SCIPvarChgType().

    ◆ SCIPeventCreateImplTypeChanged()

    SCIP_RETCODE SCIPeventCreateImplTypeChanged ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_VAR var,
    SCIP_IMPLINTTYPE  oldtype,
    SCIP_IMPLINTTYPE  newtype 
    )

    creates an event for changing the implied integral type of a variable

    Parameters
    eventpointer to store the event
    blkmemblock memory
    varvariable whose implied type changed
    oldtypeold variable implied type
    newtypenew variable implied type

    Definition at line 975 of file event.c.

    References BMSallocBlockMemory, SCIP_Var::data, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_IMPLTYPECHANGED, and SCIP_OKAY.

    Referenced by SCIPvarChgImplType().

    ◆ SCIPeventCreateRowAddedSepa()

    SCIP_RETCODE SCIPeventCreateRowAddedSepa ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_ROW row 
    )

    creates an event for the addition of a linear row to the separation storage

    Parameters
    eventpointer to store the event
    blkmemblock memory
    rowrow that was added to the separation storage

    Definition at line 998 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_ROWADDEDSEPA, and SCIP_OKAY.

    Referenced by SCIPsepastoreAddCut().

    ◆ SCIPeventCreateRowDeletedSepa()

    SCIP_RETCODE SCIPeventCreateRowDeletedSepa ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_ROW row 
    )

    creates an event for the deletion of a linear row from the separation storage

    Parameters
    eventpointer to store the event
    blkmemblock memory
    rowrow that was deleted from the separation storage

    Definition at line 1017 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_ROWDELETEDSEPA, and SCIP_OKAY.

    Referenced by SCIPsepastoreAddCut(), SCIPsepastoreClearCuts(), and sepastoreDelCut().

    ◆ SCIPeventCreateRowAddedLP()

    SCIP_RETCODE SCIPeventCreateRowAddedLP ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_ROW row 
    )

    creates an event for the addition of a linear row to the LP

    Parameters
    eventpointer to store the event
    blkmemblock memory
    rowrow that was added to the LP

    Definition at line 1036 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_ROWADDEDLP, and SCIP_OKAY.

    Referenced by SCIPlpAddRow().

    ◆ SCIPeventCreateRowDeletedLP()

    SCIP_RETCODE SCIPeventCreateRowDeletedLP ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_ROW row 
    )

    creates an event for the deletion of a linear row from the LP

    Parameters
    eventpointer to store the event
    blkmemblock memory
    rowrow that was deleted from the LP

    Definition at line 1055 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_ROWDELETEDLP, and SCIP_OKAY.

    Referenced by lpDelRowset(), and SCIPlpShrinkRows().

    ◆ SCIPeventCreateRowCoefChanged()

    SCIP_RETCODE SCIPeventCreateRowCoefChanged ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_ROW row,
    SCIP_COL col,
    SCIP_Real  oldval,
    SCIP_Real  newval 
    )

    creates an event for the change of a coefficient in a linear row

    Parameters
    eventpointer to store the event
    blkmemblock memory
    rowrow in which a coefficient changed
    colcolumn which coefficient changed
    oldvalold value of coefficient
    newvalnew value of coefficient

    Definition at line 1074 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_ROWCOEFCHANGED, and SCIP_OKAY.

    Referenced by rowEventCoefChanged().

    ◆ SCIPeventCreateRowConstChanged()

    SCIP_RETCODE SCIPeventCreateRowConstChanged ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_ROW row,
    SCIP_Real  oldval,
    SCIP_Real  newval 
    )

    creates an event for the change of a constant in a linear row

    Parameters
    eventpointer to store the event
    blkmemblock memory
    rowrow in which the constant changed
    oldvalold value of constant
    newvalnew value of constant

    Definition at line 1099 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_ROWCONSTCHANGED, and SCIP_OKAY.

    Referenced by rowEventConstantChanged().

    ◆ SCIPeventCreateRowSideChanged()

    SCIP_RETCODE SCIPeventCreateRowSideChanged ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem,
    SCIP_ROW row,
    SCIP_SIDETYPE  side,
    SCIP_Real  oldval,
    SCIP_Real  newval 
    )

    creates an event for the change of a side of a linear row

    Parameters
    eventpointer to store the event
    blkmemblock memory
    rowrow which side has changed
    sidewhich side has changed
    oldvalold value of side
    newvalnew value of side

    Definition at line 1122 of file event.c.

    References BMSallocBlockMemory, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_ROWSIDECHANGED, and SCIP_OKAY.

    Referenced by rowEventSideChanged().

    ◆ SCIPeventFree()

    SCIP_RETCODE SCIPeventFree ( SCIP_EVENT **  event,
    BMS_BLKMEM blkmem 
    )

    frees an event

    Parameters
    eventevent to free
    blkmemblock memory buffer

    Definition at line 1168 of file event.c.

    References BMSfreeBlockMemory, eventFreeExactData(), NULL, and SCIP_OKAY.

    Referenced by SCIPeventqueueAdd(), and SCIPeventqueueProcess().

    ◆ SCIPeventChgType()

    SCIP_RETCODE SCIPeventChgType ( SCIP_EVENT event,
    SCIP_EVENTTYPE  eventtype 
    )

    sets type of event

    Parameters
    eventevent
    eventtypenew event type

    Definition at line 1204 of file event.c.

    References NULL, and SCIP_OKAY.

    Referenced by initSolve(), presolveRound(), priceAndCutLoop(), primalAddSol(), SCIPnodeCutoff(), SCIPnodeFocus(), SCIPnodeFree(), SCIPnodepqBound(), SCIPnodeUpdateLowerbound(), SCIPsolveCIP(), solveNodeInitialLP(), and varProcessAddHoleLocal().

    ◆ SCIPeventChgVar()

    ◆ SCIPeventChgNode()

    SCIP_RETCODE SCIPeventChgNode ( SCIP_EVENT event,
    SCIP_NODE node 
    )

    sets node for a node or LP event

    Parameters
    eventevent
    nodenew node

    Definition at line 1547 of file event.c.

    References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_LPEVENT, SCIP_EVENTTYPE_NODEDELETE, SCIP_EVENTTYPE_NODEEVENT, SCIP_INVALIDDATA, SCIP_OKAY, SCIPABORT, and SCIPerrorMessage.

    Referenced by priceAndCutLoop(), SCIPnodeFree(), SCIPsolveCIP(), and solveNodeInitialLP().

    ◆ SCIPeventChgSol()

    SCIP_RETCODE SCIPeventChgSol ( SCIP_EVENT event,
    SCIP_SOL sol 
    )

    sets solution for a primal solution event

    Parameters
    eventevent
    solnew primal solution

    Definition at line 1584 of file event.c.

    References SCIP_Event::eventtype, NULL, SCIP_EVENTTYPE_SOLEVENT, SCIP_INVALIDDATA, SCIP_OKAY, SCIPABORT, and SCIPerrorMessage.

    Referenced by primalAddSol().

    ◆ SCIPeventProcess()

    SCIP_RETCODE SCIPeventProcess ( SCIP_EVENT event,
    SCIP_SET set,
    SCIP_PRIMAL primal,
    SCIP_LP lp,
    SCIP_BRANCHCAND branchcand,
    SCIP_EVENTFILTER eventfilter 
    )

    processes event by calling the appropriate event handlers

    Parameters
    eventevent
    setglobal SCIP settings
    primalprimal data; only needed for objchanged events, or NULL
    lpcurrent LP data; only needed for obj/boundchanged events, or NULL
    branchcandbranching candidate storage; only needed for bound change events, or NULL
    eventfilterevent filter for global events; not needed for variable specific events

    Definition at line 1804 of file event.c.

    References SCIP_Event::data, SCIP_Var::data, SCIP_Lp::divingobjchg, SCIP_Event::eventbdchg, SCIP_Var::eventfilter, SCIP_Event::eventobjchg, SCIP_Var::eventqueueimpl, SCIP_Var::eventqueueindexlb, SCIP_Var::eventqueueindexobj, SCIP_Var::eventqueueindexub, SCIP_Event::eventtype, FALSE, SCIP_Lp::lpexact, SCIP_EventBdChg::newbound, SCIP_EventBdChg::newboundexact, SCIP_EventObjChg::newobj, SCIP_EventObjChg::newobjexact, NULL, SCIP_EventBdChg::oldbound, SCIP_EventBdChg::oldboundexact, SCIP_EventObjChg::oldobj, SCIP_Lp::probing, SCIP_CALL, SCIP_EVENTTYPE_BESTSOLFOUND, SCIP_EVENTTYPE_BOUNDCHANGED, SCIP_EVENTTYPE_DISABLED, SCIP_EVENTTYPE_DUALBOUNDIMPROVED, SCIP_EVENTTYPE_FIRSTLPSOLVED, SCIP_EVENTTYPE_FORMAT, SCIP_EVENTTYPE_GHOLEADDED, SCIP_EVENTTYPE_GHOLEREMOVED, SCIP_EVENTTYPE_GLBCHANGED, SCIP_EVENTTYPE_GUBCHANGED, SCIP_EVENTTYPE_IMPLADDED, SCIP_EVENTTYPE_IMPLTYPECHANGED, SCIP_EVENTTYPE_LBRELAXED, SCIP_EVENTTYPE_LBTIGHTENED, SCIP_EVENTTYPE_LHOLEADDED, SCIP_EVENTTYPE_LHOLEREMOVED, SCIP_EVENTTYPE_LPSOLVED, SCIP_EVENTTYPE_NODEBRANCHED, SCIP_EVENTTYPE_NODEDELETE, SCIP_EVENTTYPE_NODEFEASIBLE, SCIP_EVENTTYPE_NODEFOCUSED, SCIP_EVENTTYPE_NODEINFEASIBLE, SCIP_EVENTTYPE_OBJCHANGED, SCIP_EVENTTYPE_POORSOLFOUND, SCIP_EVENTTYPE_PRESOLVEROUND, SCIP_EVENTTYPE_ROWADDEDLP, SCIP_EVENTTYPE_ROWADDEDSEPA, SCIP_EVENTTYPE_ROWCOEFCHANGED, SCIP_EVENTTYPE_ROWCONSTCHANGED, SCIP_EVENTTYPE_ROWDELETEDLP, SCIP_EVENTTYPE_ROWDELETEDSEPA, SCIP_EVENTTYPE_ROWSIDECHANGED, SCIP_EVENTTYPE_SYNC, SCIP_EVENTTYPE_TYPECHANGED, SCIP_EVENTTYPE_UBRELAXED, SCIP_EVENTTYPE_UBTIGHTENED, SCIP_EVENTTYPE_VARADDED, SCIP_EVENTTYPE_VARDELETED, SCIP_EVENTTYPE_VARFIXED, SCIP_EVENTTYPE_VARUNLOCKED, SCIP_INVALIDDATA, SCIP_OKAY, SCIP_VARSTATUS_COLUMN, SCIP_VARSTATUS_LOOSE, SCIPbranchcandUpdateVar(), SCIPcolChgLb(), SCIPcolChgObj(), SCIPcolChgUb(), SCIPcolExactChgLb(), SCIPcolExactChgObj(), SCIPcolExactChgUb(), SCIPerrorMessage, SCIPeventfilterProcess(), SCIPlpExactUpdateVarLb(), SCIPlpExactUpdateVarLbGlobal(), SCIPlpExactUpdateVarObj(), SCIPlpExactUpdateVarUb(), SCIPlpExactUpdateVarUbGlobal(), SCIPlpUpdateVarLb(), SCIPlpUpdateVarLbGlobal(), SCIPlpUpdateVarObj(), SCIPlpUpdateVarUb(), SCIPlpUpdateVarUbGlobal(), SCIPprimalUpdateVarObj(), SCIPrationalCreateBuffer(), SCIPrationalFreeBuffer(), SCIPrationalSetReal(), SCIPsetDebugMsg, SCIPvarGetCol(), SCIPvarGetColExact(), SCIPvarGetProbindex(), SCIPvarGetStatus(), SCIPvarGetStatusExact(), TRUE, and updateLpExactBoundChange().

    Referenced by initSolve(), presolveRound(), priceAndCutLoop(), primalAddSol(), SCIPeventqueueAdd(), SCIPeventqueueProcess(), SCIPnodeCutoff(), SCIPnodeFocus(), SCIPnodeFree(), SCIPnodepqBound(), SCIPnodeUpdateLowerbound(), SCIPsolveCIP(), solveNodeInitialLP(), and varProcessAddHoleLocal().

    ◆ SCIPeventfilterCreate()

    SCIP_RETCODE SCIPeventfilterCreate ( SCIP_EVENTFILTER **  eventfilter,
    BMS_BLKMEM blkmem 
    )

    creates an event filter

    Parameters
    eventfilterpointer to store the event filter
    blkmemblock memory buffer

    Definition at line 2142 of file event.c.

    References BMSallocBlockMemory, FALSE, NULL, SCIP_ALLOC, SCIP_EVENTTYPE_DISABLED, and SCIP_OKAY.

    Referenced by SCIProwCreate(), SCIPtransformProb(), SCIPvarCreateTransformed(), SCIPvarNegate(), and SCIPvarParseTransformed().

    ◆ SCIPeventfilterFree()

    SCIP_RETCODE SCIPeventfilterFree ( SCIP_EVENTFILTER **  eventfilter,
    BMS_BLKMEM blkmem,
    SCIP_SET set 
    )

    frees an event filter and the associated event data entries

    Parameters
    eventfilterpointer to store the event filter
    blkmemblock memory buffer
    setglobal SCIP settings

    Definition at line 2167 of file event.c.

    References BMSfreeBlockMemory, BMSfreeBlockMemoryArrayNull, NULL, SCIP_CALL, SCIP_EVENTTYPE_DISABLED, and SCIP_OKAY.

    Referenced by freeTransform(), freeTransforming(), SCIProwFree(), and varFree().

    ◆ SCIPeventfilterAdd()

    SCIP_RETCODE SCIPeventfilterAdd ( SCIP_EVENTFILTER eventfilter,
    BMS_BLKMEM blkmem,
    SCIP_SET set,
    SCIP_EVENTTYPE  eventtype,
    SCIP_EVENTHDLR eventhdlr,
    SCIP_EVENTDATA eventdata,
    int *  filterpos 
    )

    adds element to event filter

    Parameters
    eventfilterevent filter
    blkmemblock memory buffer
    setglobal SCIP settings
    eventtypeevent type to catch
    eventhdlrevent handler to call for the event processing
    eventdataevent data to pass to the event handler for the event processing
    filterpospointer to store position of event filter entry, or NULL

    Definition at line 2207 of file event.c.

    References SCIP_EventFilter::delayedeventmask, SCIP_EventFilter::delayupdates, SCIP_EventFilter::eventdata, eventfilterEnsureMem(), SCIP_EventFilter::eventhdlrs, SCIP_EventFilter::eventmask, SCIP_EventFilter::eventtypes, SCIP_EventFilter::firstfreepos, SCIP_EventFilter::len, SCIP_EventFilter::nextpos, NULL, SCIP_CALL, SCIP_EVENTTYPE_DISABLED, and SCIP_OKAY.

    Referenced by SCIPcatchEvent(), SCIPnlpCreate(), SCIProwCatchEvent(), and SCIPvarCatchEvent().

    ◆ SCIPeventfilterDel()

    SCIP_RETCODE SCIPeventfilterDel ( SCIP_EVENTFILTER eventfilter,
    BMS_BLKMEM blkmem,
    SCIP_SET set,
    SCIP_EVENTTYPE  eventtype,
    SCIP_EVENTHDLR eventhdlr,
    SCIP_EVENTDATA eventdata,
    int  filterpos 
    )

    deletes element from event filter

    Parameters
    eventfilterevent filter
    blkmemblock memory buffer
    setglobal SCIP settings
    eventtypeevent type
    eventhdlrevent handler to call for the event processing
    eventdataevent data to pass to the event handler for the event processing
    filterposposition of event filter entry, or -1 if unknown

    Definition at line 2300 of file event.c.

    References SCIP_EventFilter::delayupdates, SCIP_EventFilter::eventdata, eventfilterSearch(), SCIP_EventFilter::eventhdlrs, SCIP_EventFilter::eventtypes, SCIP_EventFilter::firstdeletedpos, SCIP_EventFilter::firstfreepos, SCIP_EventFilter::nextpos, NULL, SCIP_EVENTTYPE_DISABLED, SCIP_EVENTTYPE_FORMAT, SCIP_INVALIDDATA, SCIP_OKAY, and SCIPerrorMessage.

    Referenced by SCIPdropEvent(), SCIPnlpFree(), SCIProwDropEvent(), and SCIPvarDropEvent().

    ◆ SCIPeventfilterProcess()

    SCIP_RETCODE SCIPeventfilterProcess ( SCIP_EVENTFILTER eventfilter,
    SCIP_SET set,
    SCIP_EVENT event 
    )

    processes the event with all event handlers with matching filter setting

    Parameters
    eventfilterevent filter
    setglobal SCIP settings
    eventevent to process

    Definition at line 2403 of file event.c.

    References SCIP_EventFilter::eventdata, eventfilterDelayUpdates(), eventfilterProcessUpdates(), SCIP_EventFilter::eventhdlrs, SCIP_EventFilter::eventmask, SCIP_Event::eventtype, SCIP_EventFilter::eventtypes, FALSE, SCIP_EventFilter::len, NULL, SCIP_Bool, SCIP_CALL, SCIP_EVENTTYPE_FORMAT, SCIP_OKAY, SCIPeventhdlrExec(), SCIPsetDebugMsg, and TRUE.

    Referenced by SCIPeventProcess().

    ◆ SCIPeventqueueCreate()

    SCIP_RETCODE SCIPeventqueueCreate ( SCIP_EVENTQUEUE **  eventqueue)

    creates an event queue

    Parameters
    eventqueuepointer to store the event queue

    Definition at line 2505 of file event.c.

    References BMSallocMemory, FALSE, NULL, SCIP_ALLOC, and SCIP_OKAY.

    Referenced by SCIPtransformProb().

    ◆ SCIPeventqueueFree()

    SCIP_RETCODE SCIPeventqueueFree ( SCIP_EVENTQUEUE **  eventqueue)

    frees event queue; there must not be any unprocessed events in the queue!

    Parameters
    eventqueuepointer to the event queue

    Definition at line 2521 of file event.c.

    References BMSfreeMemory, BMSfreeMemoryArrayNull, NULL, and SCIP_OKAY.

    Referenced by freeTransform(), and freeTransforming().

    ◆ SCIPeventqueueAdd()

    SCIP_RETCODE SCIPeventqueueAdd ( SCIP_EVENTQUEUE eventqueue,
    BMS_BLKMEM blkmem,
    SCIP_SET set,
    SCIP_PRIMAL primal,
    SCIP_LP lp,
    SCIP_BRANCHCAND branchcand,
    SCIP_EVENTFILTER eventfilter,
    SCIP_EVENT **  event 
    )

    processes event or adds event to the event queue

    Parameters
    eventqueueevent queue
    blkmemblock memory buffer
    setglobal SCIP settings
    primalprimal data; only needed for objchanged events, or NULL
    lpcurrent LP data; only needed for obj/boundchanged events, or NULL
    branchcandbranching candidate storage; only needed for bound change events, or NULL
    eventfilterevent filter for global events; not needed for variable specific events
    eventpointer to event to add to the queue; will be NULL after queue addition

    Definition at line 2561 of file event.c.

    References SCIP_Event::data, SCIP_Var::data, SCIP_EventQueue::delayevents, SCIP_Event::eventbdchg, eventDisable(), eventFreeExactData(), SCIP_Event::eventobjchg, eventqueueAppend(), SCIP_Var::eventqueueimpl, SCIP_Var::eventqueueindexlb, SCIP_Var::eventqueueindexobj, SCIP_Var::eventqueueindexub, SCIP_Event::eventtype, SCIP_EventBdChg::newbound, SCIP_EventBdChg::newboundexact, SCIP_EventObjChg::newobj, NULL, SCIP_EventBdChg::oldbound, SCIP_EventBdChg::oldboundexact, SCIP_EventObjChg::oldobj, SCIP_CALL, SCIP_EVENTTYPE_BESTSOLFOUND, SCIP_EVENTTYPE_BOUNDCHANGED, SCIP_EVENTTYPE_DISABLED, SCIP_EVENTTYPE_DUALBOUNDIMPROVED, SCIP_EVENTTYPE_FIRSTLPSOLVED, SCIP_EVENTTYPE_FORMAT, 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_LPSOLVED, SCIP_EVENTTYPE_NODEBRANCHED, SCIP_EVENTTYPE_NODEDELETE, SCIP_EVENTTYPE_NODEFEASIBLE, SCIP_EVENTTYPE_NODEFOCUSED, SCIP_EVENTTYPE_NODEINFEASIBLE, SCIP_EVENTTYPE_OBJCHANGED, SCIP_EVENTTYPE_POORSOLFOUND, SCIP_EVENTTYPE_PRESOLVEROUND, SCIP_EVENTTYPE_ROWADDEDLP, SCIP_EVENTTYPE_ROWADDEDSEPA, SCIP_EVENTTYPE_ROWCOEFCHANGED, SCIP_EVENTTYPE_ROWCONSTCHANGED, SCIP_EVENTTYPE_ROWDELETEDLP, SCIP_EVENTTYPE_ROWDELETEDSEPA, SCIP_EVENTTYPE_ROWSIDECHANGED, SCIP_EVENTTYPE_SYNC, SCIP_EVENTTYPE_UBRELAXED, SCIP_EVENTTYPE_UBTIGHTENED, SCIP_EVENTTYPE_VARADDED, SCIP_EVENTTYPE_VARDELETED, SCIP_EVENTTYPE_VARFIXED, SCIP_EVENTTYPE_VARUNLOCKED, SCIP_INVALIDDATA, SCIP_OKAY, SCIPerrorMessage, SCIPeventAddExactBdChg(), SCIPeventFree(), SCIPeventProcess(), SCIPeventqueueDelay(), SCIPeventqueueProcess(), SCIPrationalFreeBlock(), SCIPrationalSetRational(), SCIPsetDebugMsg, SCIPsetIsEQ(), SCIPvarGetName(), TRUE, SCIP_EventObjChg::var, and SCIP_EventBdChg::var.

    Referenced by lpDelRowset(), rowEventCoefChanged(), rowEventConstantChanged(), rowEventSideChanged(), SCIPcliquetableCleanup(), SCIPincrementConcurrentTime(), SCIPlpAddRow(), SCIPlpShrinkRows(), SCIPprobAddVar(), SCIPprobDelVar(), SCIPsepastoreAddCut(), SCIPsepastoreClearCuts(), SCIPvarChgImplType(), SCIPvarChgType(), sepastoreDelCut(), varEventGholeAdded(), varEventGlbChanged(), varEventGlbChangedExact(), varEventGubChanged(), varEventGubChangedExact(), varEventImplAdded(), varEventLbChanged(), varEventLbChangedExact(), varEventObjChanged(), varEventObjChangedExact(), varEventUbChanged(), varEventUbChangedExact(), varEventVarFixed(), and varEventVarUnlocked().

    ◆ SCIPeventqueueDelay()

    SCIP_RETCODE SCIPeventqueueDelay ( SCIP_EVENTQUEUE eventqueue)

    marks queue to delay incoming events until a call to SCIPeventqueueProcess()

    Parameters
    eventqueueevent queue

    Definition at line 2846 of file event.c.

    References SCIP_EventQueue::delayevents, NULL, SCIP_OKAY, SCIPdebugMessage, and TRUE.

    Referenced by nodeRepropagate(), SCIPcliquetableCleanup(), SCIPeventqueueAdd(), and treeSwitchPath().

    ◆ SCIPeventqueueProcess()

    SCIP_RETCODE SCIPeventqueueProcess ( SCIP_EVENTQUEUE eventqueue,
    BMS_BLKMEM blkmem,
    SCIP_SET set,
    SCIP_PRIMAL primal,
    SCIP_LP lp,
    SCIP_BRANCHCAND branchcand,
    SCIP_EVENTFILTER eventfilter 
    )

    processes all events in the queue

    processes all delayed events, marks queue to process events immediately

    Parameters
    eventqueueevent queue
    blkmemblock memory buffer
    setglobal SCIP settings
    primalprimal data
    lpcurrent LP data
    branchcandbranching candidate storage
    eventfilterglobal event filter

    Definition at line 2861 of file event.c.

    References SCIP_Event::data, SCIP_EventQueue::delayevents, SCIP_Event::eventbdchg, SCIP_Event::eventimpladd, SCIP_Event::eventobjchg, SCIP_Var::eventqueueimpl, SCIP_Var::eventqueueindexlb, SCIP_Var::eventqueueindexobj, SCIP_Var::eventqueueindexub, SCIP_EventQueue::events, SCIP_Event::eventtype, FALSE, SCIP_EventQueue::nevents, NULL, SCIP_CALL, SCIP_EVENTTYPE_FORMAT, SCIP_EVENTTYPE_IMPLADDED, SCIP_EVENTTYPE_LBCHANGED, SCIP_EVENTTYPE_OBJCHANGED, SCIP_EVENTTYPE_UBCHANGED, SCIP_OKAY, SCIPeventFree(), SCIPeventProcess(), SCIPsetDebugMsg, SCIP_EventObjChg::var, SCIP_EventBdChg::var, and SCIP_EventImplAdd::var.

    Referenced by nodeRepropagate(), SCIPcliquetableCleanup(), SCIPeventqueueAdd(), and treeSwitchPath().

    ◆ SCIPeventqueueIsDelayed()

    SCIP_Bool SCIPeventqueueIsDelayed ( SCIP_EVENTQUEUE eventqueue)

    returns TRUE iff events of the queue are delayed until the next SCIPeventqueueProcess() call

    Parameters
    eventqueueevent queue

    Definition at line 2933 of file event.c.

    References SCIP_EventQueue::delayevents, and NULL.

    Referenced by nodeRepropagate(), SCIPvarAggregate(), SCIPvarAggregateExact(), SCIPvarFix(), SCIPvarFixExact(), SCIPvarMultiaggregate(), and SCIPvarMultiaggregateExact().