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: