void write_model(lprec *lp, char plp, char *wlp, char *wmps, char *wfmps, char *wxli, char *wxlisol, char *wxliname, char *wxlioptions) { if(plp) print_lp(lp); if(wlp != NULL) write_lp(lp, wlp); if(wmps != NULL) write_mps(lp, wmps); if(wfmps != NULL) write_freemps(lp, wfmps); if((wxliname != NULL) && (wxli != NULL)) { if(!set_XLI(lp, wxliname)) { fprintf(stderr, "Unable to set XLI library (%s).\n", wxliname); EndOfPgr(FORCED_EXIT); } write_XLI(lp, wxli, wxlioptions, FALSE); set_XLI(lp, NULL); } if((wxliname != NULL) && (wxlisol != NULL)) { if(!set_XLI(lp, wxliname)) { fprintf(stderr, "Unable to set XLI library (%s).\n", wxliname); EndOfPgr(FORCED_EXIT); } write_XLI(lp, wxlisol, wxlioptions, TRUE); set_XLI(lp, NULL); } }
int glp_write_mps(glp_prob *lp, int fmt, const void *parm, const char *fname) { /* write problem data in MPS format */ int ret; if (!(fmt == GLP_MPS_DECK || fmt == GLP_MPS_FILE)) xerror("glp_write_mps: fmt = %d; invalid parameter\n", fmt); if (parm != NULL) xerror("glp_write_mps: parm = %p; invalid parameter\n", parm); switch (fmt) { case GLP_MPS_DECK: ret = write_mps(lp, fname); break; case GLP_MPS_FILE: ret = write_freemps(lp, fname); break; default: xassert(fmt != fmt); } return ret; }