1#ifndef included_AMP_MatrixParameters_MatrixParametersFactory
2#define included_AMP_MatrixParameters_MatrixParametersFactory
4#include "AMP/utils/FactoryStrategy.hpp"
14class MatrixParametersBase;
16template<
class MATRIXPARAMETERS>
17std::unique_ptr<MATRIXPARAMETERS>
20 return std::make_unique<MATRIXPARAMETERS>( fid, manager );
32 return singletonInstance;
36 static std::shared_ptr<MatrixParametersBase>
create( int64_t fid,
40 template<
class MATRIXPARAMETERS>
43 FactoryStrategy<MatrixParametersBase, int64_t, AMP::IO::RestartManager *>::registerFactory(
44 name, createMatrixParametersFromRestart<MATRIXPARAMETERS> );
Class to manage reading/writing restart data.
MatrixParameters factory class.
static MatrixParametersFactory & getFactory()
get a singleton instance of the factory
static std::shared_ptr< MatrixParametersBase > create(int64_t fid, AMP::IO::RestartManager *manager)
Create the matrix parameters from the restart file.
static void registerMatrixParameters(const std::string &name)
Register a matrix parameters with the factory.
std::unique_ptr< MATRIXPARAMETERS > createMatrixParametersFromRestart(int64_t fid, AMP::IO::RestartManager *manager)