NO FRAMES

CPXgetcallbacklp

public int CPXgetcallbacklp(CPXCENVptr env, void * cbdata, int wherefrom, CPXCLPptr * lp_p)
Definition file: cplex.h
Note

This is an advanced routine. Advanced routines typically demand a thorough understanding of the algorithms used by ILOG CPLEX. Thus they incur a higher risk of incorrect behavior in your application, behavior that can be difficult to debug. Therefore, ILOG encourages you to consider carefully whether you can accomplish the same task by means of other Callable Library routines instead.

The routine CPXgetcallbacklp retrieves the pointer to the MIP problem that is in use when the user-written callback function is called. It is the original MIP if CPX_PARAM_MIPCBREDLP is set to CPX_OFF; otherwise, it is the presolved MIP. To obtain information about the node LP associated with this MIP, use the following routines:

Each of those routines will return node information associated with the original MIP if CPX_PARAM_MIPCBREDLP is turned off (that is, set to CPX_OFF); otherwise, they return information associated with the presolved MIP.

In contrast, the function CPXgetcallbacknodelp returns a pointer to the node subproblem, which is an LP. Note that the setting of CPX_PARAM_MIPCDREDLP does not affect this lp pointer. Since CPLEX does not explicitly maintain an unpresolved node LP, the lp pointer will correspond to the presolved node LP unless CPLEX presolve has been turned off or CPLEX has made no presolve reductions at all. Generally, this pointer may be used only in CPLEX Callable Library query routines, such as CPXsolution or CPXgetrows.

The routine CPXgetcallbacklp may be called only when the value of the wherefrom argument is one of the following:

Example

 status = CPXgetcallbacklp (env, cbdata, wherefrom, &origlp);

See also admipex1.c, admipex2.c, and admipex3.c in the standard distribution.

Parameters:

env

A pointer to the CPLEX environment, as returned by CPXopenCPLEX.

cbdata

The pointer passed to the user-written callback. This argument must be the value of cbdata passed to the user-written callback.

wherefrom

An integer value reporting from where the user-written callback was called. The argument must be the value of wherefrom passed to the user-written callback.

lp_p

A pointer to a variable of type CPXLPptr to receive the pointer to the LP problem object, which is a MIP.

Returns:

The routine returns zero if successful and nonzero if an error occurs.