Initializing help system before first use

XPRSgetcontrolinfo

XPRSgetcontrolinfo


Purpose
Accesses the id number and the type information of a control given its name. A control name may be for example XPRS_PRESOLVE. Names are case-insensitive and may or may not have the XPRS_ prefix. The id number is the constant used to identify the control for calls to functions such as XPRSgetintcontrol. The function will return an id number of 0 and a type value of XPRS_TYPE_NOTDEFINED if the name is not recognized as a control name. Note that this will occur if the name is an attribute name and not a control name. The type information returned will be one of the below integer constants defined in the xprs.h header file.
XPRS_TYPE_NOTDEFINED The name was not recognized.
XPRS_TYPE_INT 32 bit integer.
XPRS_TYPE_INT64 64 bit integer.
XPRS_TYPE_DOUBLE Double precision floating point.
XPRS_TYPE_STRING String.

Synopsis
int XPRS_CC XPRSgetcontrolinfo(XPRSprob prob, const char* sCaName, int* iHeaderId, int* iTypeinfo);
Arguments
prob 
The current problem.
sCaName 
The name of the control to be queried. Names are case-insensitive and may or may not have the XPRS_ prefix. A full list of all controls may be found in Control Parameters, or from the list in the xprs.h header file.
iHeaderId 
Pointer to an integer where the id number will be returned.
iTypeInfo 
Pointer to an integer where the type information will be returned.
Example
The following code example obtains the id number and the type information of the control or attribute with name given by sCaName. Note that the name happens to be a control name in this example:
const char *sCaName = "presolve";
int iHeaderId, iTypeInfo;
...
if(XPRSgetattribinfo(prob, sCaName, &iHeaderId,
                     &iTypeInfo) || iHeaderId==0) {
  if(XPRSgetcontrolinfo(prob, sCaName, &iHeaderId,
                        &iTypeInfo) || iHeaderId==0) {
    printf("Unrecognized name: %s\n", sCaName);
  }
}
Related topics