Initializing help system before first use

XPRS_msp_addcbmsghandler

XPRS_msp_addcbmsghandler


Purpose
Declares an output callback function, called every time a line of message text is output by the MIP solution pool. This callback function will be called in addition to any output callbacks already added by XPRS_msp_addcbmsghandler.
Synopsis
int XPRS_CC XPRS_msp_addcbmsghandler(XPRSmipsolpool msp, int (XPRS_CC *f_msghandler)(XPRSobject vXPRSObject, void * vUserContext, void * vSystemThreadId, const char * sMsg, int iMsgType, int iMsgNumber), void * p, int priority);
Arguments
msp 
The current MIP solution pool
f_msghandler 
The callback function which takes six arguments, vXPRSObject, vUserContext, vSystemThreadId, sMsg, iMsgType and iMsgNumber. Use a NULL value to cancel a callback function.
vXPRSObject 
The object sending the message. Use XPRSgetobjecttypename to get the name of the object type.
vUserContext 
The user-defined object passed to the callback function.
vSystemThreadId 
The system id of the thread sending the message caste to a void *.
sMsg 
A null terminated character array (string) containing the message, which may simply be a new line. When the callback is called for the first time sMsg will be a NULL pointer.
iMsgType 
Indicates the type of output message:
information messages;
(not used);
warning messages;
error messages.
A negative value means the callback is being called for the first time.
iMsgNumber 
The number associated with the message. If the message is an error or a warning then you can look up the number in the section Optimizer Error and Warning Messages for advice on what it means and how to resolve the associated issue.
A user-defined object to be passed to the callback function.
priority 
An integer that determines the order in which multiple output 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.
Further information
To send messages to a log file the built in message handler XPRSlogfilehandler can be used. This can be done with:
XPRS_msp_addcbmsghandler(msp, XPRSlogfilehandler, "log.txt");

Related topics