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(callback, data, priority)

ret = callback(my_prob, my_object)


Arguments
callback 
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, callback.
my_object 
The user-defined object passed as object when setting up the callback with addcbgloballog.
data 
A user-defined object to be passed to the callback function, callback.
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