MCF_DecompApp.h

Go to the documentation of this file.
00001 //===========================================================================//
00002 // This file is part of the Decomp Solver Framework.                         //
00003 //                                                                           //
00004 // Decomp is distributed under the Common Public License as part of the      //
00005 // COIN-OR repository (http://www.coin-or.org).                              //
00006 //                                                                           //
00007 // Author: Matthew Galati, Lehigh University                                 //
00008 //                                                                           //
00009 // Copyright (C) 2002-2015, Lehigh University, Matthew Galati, and Ted Ralphs//
00010 // All Rights Reserved.                                                      //
00011 //===========================================================================//
00012 
00013 #ifndef MCF_DECOMPAPP_INCLUDED
00014 #define MCF_DECOMPAPP_INCLUDED
00015 
00016 //===========================================================================//
00017 #include "DecompApp.h"
00018 
00019 //===========================================================================//
00020 #include "MCF_Instance.h"
00021 #include "MCF_Param.h"
00022 //===========================================================================//
00023 
00024 //===========================================================================//
00035 //===========================================================================//
00036 class MCF_DecompApp : public DecompApp {
00037 private:
00039    const string m_classTag;
00040 
00042    MCF_Param m_appParam;
00043 
00045    MCF_Instance m_instance;
00046 
00048    double* objective;
00049 
00051    vector<DecompConstraintSet*> m_models;
00052 
00053    DecompConstraintSet* modelRelax;
00054    DecompConstraintSet* modelCore;
00055 
00056 public:
00061    void initializeApp(UtilParameters& utilParam);
00062 
00063    /* Create models. */
00064    void createModels();
00065    void createModelCore(DecompConstraintSet* model);
00066    void createModelRelax(DecompConstraintSet* model,
00067                          int                   commId);
00068    void createModelRelaxSparse(DecompConstraintSet* model,
00069                                int                   commId);
00070 
00071 public:
00075    MCF_DecompApp(UtilParameters& utilParam) :
00076       DecompApp   (utilParam),
00077       m_classTag  ("MCF-APP"),
00078       objective   (   NULL  ),
00079       modelRelax  (   NULL  ),
00080       modelCore   (   NULL  ) {
00081       initializeApp(utilParam);
00082    }
00083 
00084    virtual ~MCF_DecompApp() {
00085       UTIL_DELARR(objective);
00086       UtilDeleteVectorPtr(m_models);
00087       UTIL_DELPTR(modelCore);
00088    };
00089 };
00090 
00091 #endif

Generated on 5 Apr 2015 for Dip-All by  doxygen 1.6.1