source: trunk/Cbc/src/Cbc_ampl.h @ 2345

Last change on this file since 2345 was 2345, checked in by forrest, 21 months ago

ampl with COIN_BIG_INDEX

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.7 KB
Line 
1/* $Id: Cbc_ampl.h 2345 2017-10-03 11:36:45Z forrest $ */
2/*
3  Copyright (C) 2006, International Business Machines Corporation and others.
4  All Rights Reserved.
5
6  This code is licensed under the terms of the Eclipse Public License (EPL).
7*/
8
9#ifndef AmplInterface_H
10#define AmplInterface_H
11typedef struct {
12    int numberRows;
13    int numberColumns;
14    int numberBinary;
15    int numberIntegers; /* non binary */
16    int numberSos;
17    int numberElements;
18    int numberArguments;
19    int problemStatus;
20    double direction;
21    double offset;
22    double objValue;
23    double * objective;
24    double * rowLower;
25    double * rowUpper;
26    double * columnLower;
27    double * columnUpper;
28#if COIN_BIG_INDEX==0
29    int * starts;
30#else
31    long unsigned int * starts;
32#endif
33    int * rows;
34    double * elements;
35    double * primalSolution;
36    double * dualSolution;
37    int * columnStatus;
38    int * rowStatus;
39    int * priorities;
40    int * branchDirection;
41    double * pseudoDown;
42    double * pseudoUp;
43    char * sosType;
44    int * sosPriority;
45    int * sosStart;
46    int * sosIndices;
47    double * sosReference;
48    int * cut;
49    int * special;
50    char ** arguments;
51    char buffer[300];
52    int logLevel;
53    int nonLinear;
54} ampl_info;
55#ifdef __cplusplus
56extern "C" {
57#endif
58    /* return nonzero if bad */
59    int readAmpl(ampl_info * info, int argc, char ** argv,
60    void ** coinModel);
61    /* frees some input arrays */
62    void freeArrays1(ampl_info * info);
63    /* frees rest */
64    void freeArrays2(ampl_info * info);
65    /* frees fake arguments */
66    void freeArgs(ampl_info * info);
67    /* writes ampl stuff */
68    void writeAmpl(ampl_info * info);
69    /* objective precision */
70    int ampl_obj_prec();
71#ifdef __cplusplus
72}
73#endif
74#endif
Note: See TracBrowser for help on using the repository browser.