00001 /* $Id: OSDecompFactoryInitializer.cpp 3038 2009-11-07 11:43:44Z kmartin $ */ 00014 #include<map> 00015 #include "OSDecompSolverFactory.h" 00016 //#include "OSDecompSlpSolver.h" 00017 #include "OSBearcatSolverXij.h" 00018 //#include "MySolver.h" 00019 00020 00021 #include <string> 00022 00023 00024 class OSDecompFactoryInitializer{ 00025 00026 public: 00027 //the constructor 00028 OSDecompFactoryInitializer(){ 00029 // user edit this, e.g 00030 //OSDecompSolverFactory::factories["MySolver"] = new MySolver::Factory; 00031 //OSDecompSolverFactory::factories["OSDecompCoinSolver"] = new OSDecompCoinSolver::Factory; 00032 //OSDecompSolverFactory::factories["OSDecompSlpSolver"] = new OSDecompSlpSolver::Factory; 00033 OSDecompSolverFactory::factories["OSBearcatSolverXij"] = new OSBearcatSolverXij::Factory; 00034 } 00035 00036 00037 //the destructor 00038 ~OSDecompFactoryInitializer(){ 00039 00040 std::map<std::string, OSDecompSolverFactory*>::iterator mit ; 00041 for(mit = OSDecompSolverFactory::factories.begin(); 00042 mit != OSDecompSolverFactory::factories.end(); mit++){ 00043 delete mit->second; 00044 std::cout << "DELETED A FACTORY " << std::endl; 00045 } 00046 }//end destructor 00047 }; 00048