00001 //*****************************************************************// 00002 // Albany 2.0: Copyright 2012 Sandia Corporation // 00003 // This Software is released under the BSD license detailed // 00004 // in the file "license.txt" in the top-level Albany directory // 00005 //*****************************************************************// 00006 #ifndef MOR_FILEREDUCEDBASISSOURCE_HPP 00007 #define MOR_FILEREDUCEDBASISSOURCE_HPP 00008 00009 #include "MOR_TruncatedReducedBasisSource.hpp" 00010 00011 #include "Epetra_Map.h" 00012 00013 namespace MOR { 00014 00015 class EpetraMVSourceInputFileProvider { 00016 public: 00017 /*implicit*/ EpetraMVSourceInputFileProvider(const Epetra_Map &vectorMap); 00018 00019 Teuchos::RCP<BasicEpetraMVSource> operator()(const Teuchos::RCP<Teuchos::ParameterList> ¶ms); 00020 00021 private: 00022 Epetra_Map vectorMap_; 00023 }; 00024 00025 00026 class FileReducedBasisSource : public TruncatedReducedBasisSource<EpetraMVSourceInputFileProvider> { 00027 public: 00028 explicit FileReducedBasisSource(const Epetra_Map &basisMap); 00029 }; 00030 00031 } // namespace MOR 00032 00033 #endif /* MOR_FILEREDUCEDBASISSOURCE_HPP */