All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
type_event.h
Go to the documentation of this file.
26 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
43 #define SCIP_EVENTTYPE_DISABLED 0x00000000u /**< the event was disabled and has no effect any longer */
46 #define SCIP_EVENTTYPE_VARADDED 0x00000001u /**< a variable has been added to the transformed problem */
47 #define SCIP_EVENTTYPE_VARDELETED 0x00000002u /**< a variable will be deleted from the transformed problem */
48 #define SCIP_EVENTTYPE_VARFIXED 0x00000004u /**< a variable has been fixed, aggregated, or multi-aggregated */
49 #define SCIP_EVENTTYPE_VARUNLOCKED 0x00000008u /**< the number of rounding locks of a variable was reduced to zero or
51 #define SCIP_EVENTTYPE_OBJCHANGED 0x00000010u /**< the objective value of a variable has been changed */
52 #define SCIP_EVENTTYPE_GLBCHANGED 0x00000020u /**< the global lower bound of a variable has been changed */
53 #define SCIP_EVENTTYPE_GUBCHANGED 0x00000040u /**< the global upper bound of a variable has been changed */
54 #define SCIP_EVENTTYPE_LBTIGHTENED 0x00000080u /**< the local lower bound of a variable has been increased */
55 #define SCIP_EVENTTYPE_LBRELAXED 0x00000100u /**< the local lower bound of a variable has been decreased */
56 #define SCIP_EVENTTYPE_UBTIGHTENED 0x00000200u /**< the local upper bound of a variable has been decreased */
57 #define SCIP_EVENTTYPE_UBRELAXED 0x00000400u /**< the local upper bound of a variable has been increased */
58 #define SCIP_EVENTTYPE_GHOLEADDED 0x00000800u /**< a global hole has been added to the hole list of a variable's domain */
59 #define SCIP_EVENTTYPE_GHOLEREMOVED 0x00001000u /**< a global hole has been removed from the hole list of a variable's domain */
60 #define SCIP_EVENTTYPE_LHOLEADDED 0x00002000u /**< a local hole has been added to the hole list of a variable's domain */
61 #define SCIP_EVENTTYPE_LHOLEREMOVED 0x00004000u /**< a local hole has been removed from the hole list of a variable's domain */
62 #define SCIP_EVENTTYPE_IMPLADDED 0x00008000u /**< the variable's implication list, variable bound or clique information
69 #define SCIP_EVENTTYPE_NODEFOCUSED 0x00020000u /**< a node has been focused and is now the focus node */
70 #define SCIP_EVENTTYPE_NODEFEASIBLE 0x00040000u /**< the LP/pseudo solution of the node was feasible */
71 #define SCIP_EVENTTYPE_NODEINFEASIBLE 0x00080000u /**< the focus node has been proven to be infeasible or was bounded */
72 #define SCIP_EVENTTYPE_NODEBRANCHED 0x00100000u /**< the focus node has been solved by branching */
76 #define SCIP_EVENTTYPE_LPSOLVED 0x00400000u /**< the node's LP was completely solved with cut & price */
79 #define SCIP_EVENTTYPE_POORSOLFOUND 0x00800000u /**< a good enough primal feasible (but not new best) solution was found */
80 #define SCIP_EVENTTYPE_BESTSOLFOUND 0x01000000u /**< a new best primal feasible solution was found */
83 #define SCIP_EVENTTYPE_ROWADDEDSEPA 0x02000000u /**< a row has been added to SCIP's separation storage */
84 #define SCIP_EVENTTYPE_ROWDELETEDSEPA 0x04000000u /**< a row has been removed from SCIP's separation storage */
87 #define SCIP_EVENTTYPE_ROWCOEFCHANGED 0x20000000u /**< a coefficient of a row has been changed (row specific event) */
88 #define SCIP_EVENTTYPE_ROWCONSTCHANGED 0x40000000u/**< the constant of a row has been changed (row specific event) */
89 #define SCIP_EVENTTYPE_ROWSIDECHANGED 0x80000000u /**< a side of a row has been changed (row specific event) */
102 #define SCIP_EVENTTYPE_VARCHANGED (SCIP_EVENTTYPE_VARFIXED | SCIP_EVENTTYPE_VARUNLOCKED | SCIP_EVENTTYPE_OBJCHANGED \
108 #define SCIP_EVENTTYPE_NODESOLVED (SCIP_EVENTTYPE_NODEFEASIBLE | SCIP_EVENTTYPE_NODEINFEASIBLE \
120 #define SCIP_EVENTTYPE_ROWCHANGED (SCIP_EVENTTYPE_ROWCOEFCHANGED | SCIP_EVENTTYPE_ROWCONSTCHANGED | SCIP_EVENTTYPE_ROWSIDECHANGED)
121 #define SCIP_EVENTTYPE_ROWEVENT (SCIP_EVENTTYPE_ROWADDEDSEPA | SCIP_EVENTTYPE_ROWDELETEDSEPA | SCIP_EVENTTYPE_ROWADDEDLP | SCIP_EVENTTYPE_ROWDELETEDLP | SCIP_EVENTTYPE_ROWCHANGED)
130 typedef struct SCIP_EventVarDeleted SCIP_EVENTVARDELETED; /**< data for variable deletion events */
132 typedef struct SCIP_EventVarUnlocked SCIP_EVENTVARUNLOCKED; /**< data for variable unlocked events */
133 typedef struct SCIP_EventObjChg SCIP_EVENTOBJCHG; /**< data for objective value change events */
137 typedef struct SCIP_EventRowAddedSepa SCIP_EVENTROWADDEDSEPA; /**< data for row addition to sepastorage events */
138 typedef struct SCIP_EventRowDeletedSepa SCIP_EVENTROWDELETEDSEPA; /**< data for row deletion from sepastorage events */
139 typedef struct SCIP_EventRowAddedLP SCIP_EVENTROWADDEDLP; /**< data for row addition to LP events */
140 typedef struct SCIP_EventRowDeletedLP SCIP_EVENTROWDELETEDLP; /**< data for row deletion from LP events */
141 typedef struct SCIP_EventRowCoefChanged SCIP_EVENTROWCOEFCHANGED; /**< data for row coefficient change events */
142 typedef struct SCIP_EventRowConstChanged SCIP_EVENTROWCONSTCHANGED; /**< data for row constant change events */
143 typedef struct SCIP_EventRowSideChanged SCIP_EVENTROWSIDECHANGED; /**< data for row side change events */
145 typedef struct SCIP_EventFilter SCIP_EVENTFILTER; /**< event filter to select events to be processed by an event handler */
146 typedef struct SCIP_EventQueue SCIP_EVENTQUEUE; /**< event queue to cache events and process them later */
180 /** solving process initialization method of event handler (called when branch and bound process is about to begin)
182 * This method is called when the presolving was finished and the branch and bound process is about to begin.
191 /** solving process deinitialization method of event handler (called before branch and bound process data is freed)
209 #define SCIP_DECL_EVENTDELETE(x) SCIP_RETCODE x (SCIP* scip, SCIP_EVENTHDLR* eventhdlr, SCIP_EVENTDATA** eventdata)
213 * Processes the event. The method is called every time an event occurs, for which the event handler
215 * corresponding SCIPcatch...() method. This method creates an event filter object to point to the
224 #define SCIP_DECL_EVENTEXEC(x) SCIP_RETCODE x (SCIP* scip, SCIP_EVENTHDLR* eventhdlr, SCIP_EVENT* event, SCIP_EVENTDATA* eventdata)
|