Advanced Multi-Physics (AMP)
On-Line Documentation
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
AMP::LinearAlgebra::PetscViewFactory Class Reference

#include <PetscVectorFactory.h>

Inheritance diagram for AMP::LinearAlgebra::PetscViewFactory:
Inheritance graph
[legend]

Public Member Functions

std::shared_ptr< VecgetVec (AMP::LinearAlgebra::Vector::shared_ptr vec) const override
 
AMP::LinearAlgebra::Vector::shared_ptr getVector () const override
 
std::string name () const override
 
 PetscViewFactory (std::shared_ptr< const VectorFactory > factory)
 

Static Public Member Functions

static std::shared_ptr< Vectorcreate (int64_t fid, AMP::IO::RestartManager *manager)
 Create the vector from the restart file.
 
static VectorFactorygetFactory ()
 get a singleton instance of the factory
 
template<class VECTOR >
static void registerVector (const std::string &name)
 Register a vector with the factory.
 

Private Attributes

std::shared_ptr< const VectorFactoryd_factory
 

Detailed Description

Definition at line 72 of file PetscVectorFactory.h.

Constructor & Destructor Documentation

◆ PetscViewFactory()

AMP::LinearAlgebra::PetscViewFactory::PetscViewFactory ( std::shared_ptr< const VectorFactory factory)
inlineexplicit

Definition at line 75 of file PetscVectorFactory.h.

Member Function Documentation

◆ create()

static std::shared_ptr< Vector > AMP::LinearAlgebra::VectorFactory::create ( int64_t  fid,
AMP::IO::RestartManager manager 
)
staticinherited

Create the vector from the restart file.

◆ getFactory()

static VectorFactory & AMP::LinearAlgebra::VectorFactory::getFactory ( )
inlinestaticinherited

get a singleton instance of the factory

Definition at line 28 of file VectorFactory.h.

◆ getVec()

std::shared_ptr< Vec > AMP::LinearAlgebra::PetscViewFactory::getVec ( AMP::LinearAlgebra::Vector::shared_ptr  vec) const
inlineoverridevirtual

◆ getVector()

AMP::LinearAlgebra::Vector::shared_ptr AMP::LinearAlgebra::PetscViewFactory::getVector ( ) const
inlineoverridevirtual

Implements AMP::LinearAlgebra::VectorFactory.

Definition at line 84 of file PetscVectorFactory.h.

References d_factory.

◆ name()

std::string AMP::LinearAlgebra::PetscViewFactory::name ( ) const
inlineoverridevirtual

Implements AMP::LinearAlgebra::VectorFactory.

Definition at line 88 of file PetscVectorFactory.h.

References d_factory.

◆ registerVector()

template<class VECTOR >
static void AMP::LinearAlgebra::VectorFactory::registerVector ( const std::string &  name)
inlinestaticinherited

Register a vector with the factory.

Definition at line 39 of file VectorFactory.h.

References AMP::LinearAlgebra::VectorFactory::name().

Member Data Documentation

◆ d_factory

std::shared_ptr<const VectorFactory> AMP::LinearAlgebra::PetscViewFactory::d_factory
private

Definition at line 91 of file PetscVectorFactory.h.

Referenced by getVector(), and name().


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



Advanced Multi-Physics (AMP)
Oak Ridge National Laboratory
Idaho National Laboratory
Los Alamos National Laboratory
This page automatically produced from the
source code by doxygen
Last updated: Tue Mar 10 2026 13:06:43.
Comments on this page