00001 /****************************************************************************/ 00002 /* */ 00003 /* This file is part of QSopt_ex. */ 00004 /* */ 00005 /* (c) Copyright 2006 by David Applegate, William Cook, Sanjeeb Dash, */ 00006 /* and Daniel Espinoza */ 00007 /* */ 00008 /* Sanjeeb Dash ownership of copyright in QSopt_ex is derived from his */ 00009 /* copyright in QSopt. */ 00010 /* */ 00011 /* This code may be used under the terms of the GNU General Public License */ 00012 /* (Version 2.1 or later) as published by the Free Software Foundation. */ 00013 /* */ 00014 /* Alternatively, use is granted for research purposes only. */ 00015 /* */ 00016 /* It is your choice of which of these two licenses you are operating */ 00017 /* under. */ 00018 /* */ 00019 /* We make no guarantees about the correctness or usefulness of this code. */ 00020 /* */ 00021 /****************************************************************************/ 00022 00023 /* RCSINFO $Id: lp.h,v 1.2 2003/11/05 16:57:39 meven Exp $ */ 00024 #ifndef LP_H 00025 #define LP_H 00026 00027 #include "qs_config.h" 00028 #include "readline.h" 00029 00030 /****************************************************************************/ 00031 /* */ 00032 /* Routines to support Reading and Writing LP Files */ 00033 /* */ 00034 /****************************************************************************/ 00035 /* 00036 * -) anything after '\' is comment 00037 * -) Problem is optional and comes first 00038 * -) Minimize, Maximize, ... comes after Problem 00039 * -) variables consist of a-z A-Z 0-9!"#$%(),;.?@_`'{}|~ 00040 * don't start with a digit or '.' 00041 */ 00042 00043 #include "lpdata.h" 00044 #include "rawlp.h" 00045 #include "read_lp.h" 00046 #include "write_lp.h" 00047 00048 extern int ILLread_lp ( 00049 qsline_reader * file, 00050 const char *fname, 00051 rawlpdata * lp); 00052 extern int ILLwrite_lp ( 00053 ILLlpdata * l, 00054 qserror_collector * collector); 00055 00056 /* write using current lp->reporter */ 00057 extern int ILLis_lp_name_char ( 00058 int c, 00059 int pos); 00060 00061 extern int ILLread_constraint_name ( 00062 ILLread_lp_state * state, 00063 char **rowname); 00064 extern int ILLread_one_constraint ( 00065 ILLread_lp_state * state, 00066 const char *rowname, 00067 rawlpdata * lp, 00068 int allowNewColsAddRow); 00069 extern int ILLread_constraint_expr ( 00070 ILLread_lp_state * state, 00071 rawlpdata * lp, 00072 int rowind, 00073 int allowNew); 00074 00075 #endif
1.4.7