LAMA
|
00001 00033 #ifndef LAMA_CGCREATOR_HPP_ 00034 #define LAMA_CGCREATOR_HPP_ 00035 00036 // for dll_import 00037 #include <lama/config.hpp> 00038 00039 // base classes 00040 #include <lama/solver/creator/IterativeSolverCreator.hpp> 00041 00042 namespace lama 00043 { 00044 00045 class CG; 00046 00047 class LAMA_DLL_IMPORTEXPORT CGCreator : public IterativeSolverCreator 00048 { 00049 public: 00050 using IterativeSolverCreator::RuleType; 00051 00052 CGCreator( const std::string type ); 00053 00054 virtual ~CGCreator(); 00055 00059 static const std::string& id(); 00060 00064 virtual RuleType& getCreatorRule(); 00065 00066 protected: 00072 RuleType mRCG; 00073 00074 private: 00075 LAMA_LOG_DECL_STATIC_LOGGER(logger); 00076 }; 00077 00078 } // namespace lama 00079 00080 #endif // LAMA_CGCREATOR_HPP_