| Overview | Group | Tree | Graph | Index | Concepts |
The routine CPXgetlpcallbackfunc is used to access the
user-written callback routine to be called after each iteration during the
optimization of a linear or quadratic program, and also periodically during
the CPLEX presolve algorithm.
Callback description
int callback (CPXENVptr 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 LP problem being optimized. The only
purpose for the cbdata pointer is to pass it to the routine
CPXgetcallbackinfo.
wherefrom
An integer value indicating which optimization algorithm the user-written callback function was called from. Possible values and their meaning appear in the table.
| Value | Symbolic Constant | Meaning |
1 | CPX_CALLBACK_PRIMAL | From primal simplex |
2 | CPX_CALLBACK_DUAL | From dual simplex |
4 | CPX_CALLBACK_PRIMAL_CROSSOVER | From primal crossover |
5 | CPX_CALLBACK_DUAL_CROSSOVER | From dual crossover |
6 | CPX_CALLBACK_BARRIER | From barrier |
7 | CPX_CALLBACK_PRESOLVE | From presolve |
8 | CPX_CALLBACK_QPBARRIER | From QP barrier |
9 | CPX_CALLBACK_QPSIMPLEX | From QP simplex |
cbhandle
Pointer to user private data, as passed to
CPXsetlpcallbackfunc.
Parameters
env
A pointer to the CPLEX environment
as returned by CPXopenCPLEX.
callback_p
The address of the pointer to the current user-written callback function. If no callback function has been set, the pointer evaluates to NULL.
cbhandle_p
The address of a variable to hold the user's private pointer.
Example
status = CPXgetlpcallbackfunc (env, mycallback, NULL);
See Also: