Advanced Multi-Physics (AMP)
On-Line Documentation
ThyraVectorFactory.h
Go to the documentation of this file.
1#ifndef included_AMP_ThyraVectorFactor
2#define included_AMP_ThyraVectorFactor
3
4
5#include "AMP/AMP_TPLs.h"
6#include "AMP/utils/UnitTest.h"
7#include "AMP/vectors/Vector.h"
8#include "AMP/vectors/testHelpers/VectorTests.h"
9
10
12
13
14namespace AMP::LinearAlgebra {
15
16
17class NativeThyraFactory : public VectorFactory
18{
19public:
20 NativeThyraFactory() {}
21 AMP::LinearAlgebra::Vector::shared_ptr getVector() const override;
22 std::string name() const override { return "NativeThyraFactory"; }
23};
24
25
26class ManagedThyraFactory : public VectorFactory
27{
28public:
29 explicit ManagedThyraFactory( std::shared_ptr<VectorFactory> factory ) : d_factory( factory ) {}
30 AMP::LinearAlgebra::Vector::shared_ptr getVector() const override;
31 std::string name() const override { return "ManagedThyraFactory<" + d_factory->name() + ">"; }
32
33private:
34 ManagedThyraFactory();
35 std::shared_ptr<VectorFactory> d_factory;
36};
37
38
39class ManagedNativeThyraFactory : public VectorFactory
40{
41public:
42 explicit ManagedNativeThyraFactory( std::shared_ptr<VectorFactory> factory )
43 : d_factory( factory )
44 {
45 }
46 virtual AMP::LinearAlgebra::Vector::shared_ptr getVector() const override;
47 virtual std::string name() const override
48 {
49 return "ManagedNativeThyraFactory<" + d_factory->name() + ">";
50 }
51
52private:
53 ManagedNativeThyraFactory();
54 std::shared_ptr<VectorFactory> d_factory;
55};
56
57#ifdef AMP_USE_TRILINOS_BELOS
58void testBelosThyraVector( AMP::UnitTest &utils, const VectorFactory &factory );
59#endif
60
61} // namespace AMP::LinearAlgebra
62
64
65#endif
std::shared_ptr< Vector > shared_ptr
Shorthand for shared pointer to Vector.
Definition Vector.h:60
Class UnitTest is simple utility for running unit tests. It provides basic routines for tracing succe...
Definition UnitTest.h:49



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:41.
Comments on this page