Cbc  trunk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Cbc_ampl.h
Go to the documentation of this file.
00001 /* $Id$ */
00002 /*
00003   Copyright (C) 2006, International Business Machines Corporation and others.
00004   All Rights Reserved.
00005 
00006   This code is licensed under the terms of the Eclipse Public License (EPL).
00007 */
00008 
00009 #ifndef AmplInterface_H
00010 #define AmplInterface_H
00011 typedef struct {
00012     int numberRows;
00013     int numberColumns;
00014     int numberBinary;
00015     int numberIntegers; /* non binary */
00016     int numberSos;
00017     int numberElements;
00018     int numberArguments;
00019     int problemStatus;
00020     double direction;
00021     double offset;
00022     double objValue;
00023     double * objective;
00024     double * rowLower;
00025     double * rowUpper;
00026     double * columnLower;
00027     double * columnUpper;
00028     int * starts;
00029     int * rows;
00030     double * elements;
00031     double * primalSolution;
00032     double * dualSolution;
00033     int * columnStatus;
00034     int * rowStatus;
00035     int * priorities;
00036     int * branchDirection;
00037     double * pseudoDown;
00038     double * pseudoUp;
00039     char * sosType;
00040     int * sosPriority;
00041     int * sosStart;
00042     int * sosIndices;
00043     double * sosReference;
00044     int * cut;
00045     int * special;
00046     char ** arguments;
00047     char buffer[300];
00048     int logLevel;
00049     int nonLinear;
00050 } ampl_info;
00051 #ifdef __cplusplus
00052 extern "C" {
00053 #endif
00054     /* return nonzero if bad */
00055     int readAmpl(ampl_info * info, int argc, char ** argv,
00056     void ** coinModel);
00057     /* frees some input arrays */
00058     void freeArrays1(ampl_info * info);
00059     /* frees rest */
00060     void freeArrays2(ampl_info * info);
00061     /* frees fake arguments */
00062     void freeArgs(ampl_info * info);
00063     /* writes ampl stuff */
00064     void writeAmpl(ampl_info * info);
00065     /* objective precision */
00066     int ampl_obj_prec();
00067 #ifdef __cplusplus
00068 }
00069 #endif
00070 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines