Initializing help system before first use

problem.addcbgloballog

problem.addcbgloballog


Purpose
Declares a global log callback function, called each time the global log is printed. This callback function will be called in addition to any callbacks already added by addcbgloballog.
Synopsis

problem.addcbgloballog (f_globallog, object, priority)

ret = f_globallog (my_prob, my_object)


Arguments
f_globallog 
The callback function which takes two arguments, my_prob and my_object, and has an integer return value. This function is called whenever the global log is printed as determined by the MIPLOG control.
my_prob 
The problem passed to the callback function, f_globallog.
my_object 
The user-defined object passed as object when setting up the callback with addcbgloballog.
object 
A user-defined object to be passed to the callback function, f_globallog.
priority 
An integer that determines the order in which multiple global log callbacks will be invoked. The callback added with a higher priority will be called before a callback with a lower priority. Set to 0 if not required.
Example
The following example prints at each node of the global search the node number and its depth:
prob.controls.miplog = 3
prob.addcbgloballog (globalLog, None, 0)
prob.mipoptimize ('')
The callback function may resemble:
def globalLog (prob, object):

    nodedepth = prob.attributes.nodedepth
    node      = prob.attributes.currentnode

    print ('Node {0} with depth {1} has been processed'.format
           (node, nodedepth))

    return 0
Further information
If the callback function returns a nonzero value, the global search will be interrupted.
Related topics