00001 /* OOQP * 00002 * Authors: E. Michael Gertz, Stephen J. Wright * 00003 * (C) 2001 University of Chicago. See Copyright Notification in OOQP */ 00004 00005 #ifndef OPTIMIZATIONFACTORY 00006 #define OPTIMIZATIONFACTORY 00007 00040 class Data; 00041 class Residuals; 00042 class LinearSystem; 00043 class Variables; 00044 00049 class ProblemFormulation { 00050 public: 00051 00053 virtual Residuals * makeResiduals( Data * prob_in ) = 0; 00054 00056 virtual LinearSystem * makeLinsys( Data * prob_in ) = 0; 00057 00059 virtual Variables * makeVariables( Data * prob_in ) = 0; 00060 virtual ~ProblemFormulation() {}; 00061 }; 00062 00064 #endif 00065 00066