FEI Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Member Functions | List of all members
fei::Factory Class Referenceabstract

#include <fei_Factory.hpp>

Inheritance diagram for fei::Factory:
Inheritance graph
[legend]

Public Member Functions

 Factory (MPI_Comm comm)
 
virtual ~Factory ()
 
virtual fei::SharedPtr< Factoryclone () const =0
 
virtual void parameters (const fei::ParameterSet &paramset)
 
virtual fei::SharedPtr< FEIcreateFEI (fei::SharedPtr< LibraryWrapper > wrapper, MPI_Comm comm)
 
virtual fei::SharedPtr< FEIcreateFEI (MPI_Comm comm)
 
virtual int getOutputLevel () const =0
 
- Public Member Functions inherited from fei::VectorSpace::Factory
virtual fei::SharedPtr
< VectorSpace
createVectorSpace (MPI_Comm, const char *name)
 
- Public Member Functions inherited from fei::MatrixGraph::Factory
virtual fei::SharedPtr
< fei::MatrixGraph
createMatrixGraph (fei::SharedPtr< fei::VectorSpace > rowSpace, fei::SharedPtr< fei::VectorSpace > columnSpace, const char *name)=0
 
- Public Member Functions inherited from fei::Matrix::Factory
virtual fei::SharedPtr
< fei::Matrix
createMatrix (fei::SharedPtr< fei::MatrixGraph > matrixGraph)=0
 
- Public Member Functions inherited from fei::Vector::Factory
virtual fei::SharedPtr
< fei::Vector
createVector (fei::SharedPtr< fei::VectorSpace > vecSpace, int numVectors=1)=0
 
virtual fei::SharedPtr
< fei::Vector
createVector (fei::SharedPtr< fei::VectorSpace > vecSpace, bool isSolutionVector, int numVectors=1)=0
 
virtual fei::SharedPtr
< fei::Vector
createVector (fei::SharedPtr< fei::MatrixGraph > matrixGraph, int numVectors=1)=0
 
virtual fei::SharedPtr
< fei::Vector
createVector (fei::SharedPtr< fei::MatrixGraph > matrixGraph, bool isSolutionVector, int numVectors=1)=0
 
- Public Member Functions inherited from fei::LinearSystem::Factory
virtual fei::SharedPtr
< fei::LinearSystem
createLinearSystem (fei::SharedPtr< fei::MatrixGraph > &matrixGraph)
 
- Public Member Functions inherited from fei::Solver::Factory
virtual fei::SharedPtr
< fei::Solver
createSolver (const char *name=0)=0
 

Private Member Functions

 Factory ()
 
 Factory (const Factory &src)
 

Detailed Description

Interface for creating fei:: instances. In all cases, input arguments (arguments required to construct the requested class) are followed by the result or output argument.

This interface inherits the various fei:: factory interfaces as a convenience mechanism, so that user code can deal with one factory object instead of a different factory for each class. In addition to inheriting the fei:: factories, this interface also provides methods for creating instances of the 'old' FEI class.

Definition at line 37 of file fei_Factory.hpp.

Constructor & Destructor Documentation

fei::Factory::Factory ( MPI_Comm  comm)
fei::Factory::~Factory ( )
virtual
fei::Factory::Factory ( )
private
fei::Factory::Factory ( const Factory src)
private

Member Function Documentation

virtual fei::SharedPtr<Factory> fei::Factory::clone ( ) const
pure virtual

Create and return a new Factory of the same type.

Implemented in Factory_Trilinos, Factory_Aztec, and snl_fei::Factory.

Referenced by fei::FEI_Impl::FEI_Impl(), and test_Factory::runtests().

void fei::Factory::parameters ( const fei::ParameterSet paramset)
virtual
fei::SharedPtr< FEI > fei::Factory::createFEI ( fei::SharedPtr< LibraryWrapper wrapper,
MPI_Comm  comm 
)
virtual
  Produce an instance of the "old" FEI class (implements the FEI 2.1

interface specification).

  This function is virtual, but not pure-virtual. An implementation
  is provided by this class, and can be inherited by derived classes
  if desired.

Definition at line 65 of file fei_Factory.cpp.

References FEI_Implementation.

Referenced by beam_oldfei_main(), test_Factory::factory_test1(), main(), and poisson_main().

fei::SharedPtr< FEI > fei::Factory::createFEI ( MPI_Comm  comm)
virtual
  Produce an instance of the "old" FEI class (implements the FEI 2.1

interface specification).

  This function is virtual, but not pure-virtual. An implementation
  is provided by this class, and can be inherited by derived classes
  if desired.

Definition at line 76 of file fei_Factory.cpp.

virtual int fei::Factory::getOutputLevel ( ) const
pure virtual
  Query screen output-level (set by parameter-string "outputLevel n"

via parameters())

Implemented in Factory_Trilinos, Factory_Aztec, and snl_fei::Factory.


The documentation for this class was generated from the following files: