Ejemplo n.º 1
0
void EGLPNUM_TYPENAME_ILLfree_rawlpdata (
	EGLPNUM_TYPENAME_rawlpdata * lp)
{
	int total, onlist;
	EGLPNUM_TYPENAME_colptr *next, *curr;

	if (lp)
	{
		ILL_IFFREE(lp->name);

		ILLsymboltab_free (&lp->rowtab);
		ILLsymboltab_free (&lp->coltab);
		ILL_IFFREE(lp->rowsense);

		EGLPNUM_TYPENAME_ILLraw_clear_matrix (lp);
		ILL_IFFREE(lp->cols);
		{
			curr = lp->ranges;
			while (curr)
			{
				next = curr->next;
				EGLPNUM_TYPENAME_EGlpNumClearVar ((curr->coef));
				colptrfree (&(lp->ptrworld), curr);
				curr = next;
			}
		}
		//colptr_listfree (&lp->ptrworld, lp->ranges);
		if (colptr_check_leaks (&lp->ptrworld, &total, &onlist))
		{
			QSlog("WARNING: %d outstanding colptrs", total - onlist);
		}
		ILLptrworld_delete (&lp->ptrworld);
		ILL_IFFREE(lp->rhsname);

		EGLPNUM_TYPENAME_EGlpNumFreeArray (lp->rhs);
		ILL_IFFREE(lp->rhsind);
		ILL_IFFREE(lp->rangesname);
		ILL_IFFREE(lp->rangesind);
		ILL_IFFREE(lp->boundsname);
		ILL_IFFREE(lp->lbind);
		ILL_IFFREE(lp->ubind);

		EGLPNUM_TYPENAME_EGlpNumFreeArray (lp->lower);
		EGLPNUM_TYPENAME_EGlpNumFreeArray (lp->upper);
		ILL_IFFREE(lp->intmarker);
		ILL_IFFREE(lp->refrow);
		ILL_IFFREE(lp->is_sos_member);

		EGLPNUM_TYPENAME_EGlpNumFreeArray (lp->sos_weight);
		ILL_IFFREE(lp->sos_col);

		ILL_IFFREE(lp->sos_set);
		EGLPNUM_TYPENAME_ILLinit_rawlpdata (lp, NULL);
	}
}
Ejemplo n.º 2
0
void mpf_ILLline_reader_free (mpf_qsline_reader * reader)
{
    ILL_IFFREE (reader, mpf_qsline_reader);
}