CPXXsetnetcallbackfunc and CPXsetnetcallbackfunc

Sets the user-written legacy callback routine to be called each time a log message is issued during the optimization of a network program.

int CPXXsetnetcallbackfunc( CPXENVptrenv, int(CPXPUBLIC *callback)(CPXCENVptr, void *, int, void *), void *cbhandle )

int CPXsetnetcallbackfunc( CPXENVptrenv, int(CPXPUBLIC *callback)(CPXCENVptr, void *, int, void *), void *cbhandle )

Description

The routine CPXXsetnetcallbackfunc/CPXsetnetcallbackfunc sets the user-written legacy callback function to be called each time a log message is issued during the optimization of a network program. If the display log is turned off, the callback routine will still be called.

Tip:

This routine is part of legacy callbacks. Do not use this routine with a generic callback in your application. For more about generic callbacks, see the topic Generic callbacks in the CPLEX User's Manual.

This routine works in the same way as the routine CPXXsetlpcallbackfunc/CPXsetlpcallbackfunc. It enables the user to create a separate callback function to be called during the solution of a network problem. The prototype for the callback function is identical to that of CPXXsetlpcallbackfunc/CPXsetlpcallbackfunc.

Callback description


int CPXPUBLIC
callback (CPXCENVptr env,
          void *cbdata,
          int wherefrom,
          void *cbhandle);

This is the user-written callback routine.

Callback return value

A nonzero terminates the optimization.

Callback arguments

env

A pointer to the CPLEX environment that was passed into the associated optimization routine.

cbdata

A pointer passed from the optimization routine to the user-written callback function that identifies the problem being optimized. The only purpose for the cbdata pointer is to pass it to the routine CPXXgetcallbackinfo/CPXgetcallbackinfo.

wherefrom

An integer value specifying from which optimization algorithm the user-written callback function was called. Possible values and their meaning appear in the table.

Value Symbolic Constant Meaning
3 CPX_CALLBACK_NETWORK From network simplex

cbhandle

Pointer to user private data, as passed to CPXXsetnetcallbackfunc/CPXsetnetcallbackfunc.

Arguments

env

A pointer to the CPLEX environment as returned by CPXXopenCPLEX/CPXopenCPLEX.

callback

A pointer to a user-written callback function. Setting callback to NULL prevents any callback function from being called during optimization. The call to callback occurs after every log message is issued during optimization and periodically during the CPLEX presolve algorithms. This function is written by the user.

cbhandle

A pointer to user private data. This pointer is passed to the callback function.

Return

If the operation is successful, the routine returns 0 (zero);

Example


status = CPXsetnetcallbackfunc (env, myfunc, NULL);
if not, it returns nonzero to report an error.