MueLu
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
MueLu_FactoryBase.hpp
Go to the documentation of this file.
1
// @HEADER
2
// *****************************************************************************
3
// MueLu: A package for multigrid based preconditioning
4
//
5
// Copyright 2012 NTESS and the MueLu contributors.
6
// SPDX-License-Identifier: BSD-3-Clause
7
// *****************************************************************************
8
// @HEADER
9
10
#ifndef MUELU_FACTORYBASE_HPP
11
#define MUELU_FACTORYBASE_HPP
12
13
#include "MueLu_config.hpp"
14
#include "
MueLu_BaseClass.hpp
"
15
#include "
MueLu_Level_fwd.hpp
"
16
17
namespace
MueLu
{
18
24
class
FactoryBase
:
public
virtual
BaseClass
{
25
public
:
27
29
FactoryBase
()
30
:
id_
(
FactoryBase
::
GenerateUniqueId
()) {}
31
33
virtual
~FactoryBase
() {}
35
37
38
39
virtual
void
CallBuild
(
Level
& requestedLevel)
const
= 0;
40
41
virtual
void
CallDeclareInput
(
Level
& requestedLevel)
const
= 0;
43
45
46
48
int
GetID
()
const
{
return
id_
; };
49
51
52
#ifdef HAVE_MUELU_DEBUG
53
virtual
void
ResetDebugData()
const
= 0;
54
#endif
55
56
private
:
57
static
int
GenerateUniqueId
();
58
59
const
int
id_
;
60
61
};
// class FactoryBase
62
63
}
// namespace MueLu
64
65
#define MUELU_FACTORYBASE_SHORT
66
#endif
// ifndef MUELU_FACTORYBASE_HPP
MueLu_BaseClass.hpp
MueLu_Level_fwd.hpp
MueLu::BaseClass
Base class for MueLu classes.
Definition
MueLu_BaseClass.hpp:27
MueLu::FactoryBase::GenerateUniqueId
static int GenerateUniqueId()
Definition
MueLu_FactoryBase.cpp:14
MueLu::FactoryBase::CallBuild
virtual void CallBuild(Level &requestedLevel) const =0
MueLu::FactoryBase::id_
const int id_
Definition
MueLu_FactoryBase.hpp:59
MueLu::FactoryBase::CallDeclareInput
virtual void CallDeclareInput(Level &requestedLevel) const =0
MueLu::FactoryBase::FactoryBase
FactoryBase()
Constructor.
Definition
MueLu_FactoryBase.hpp:29
MueLu::FactoryBase::GetID
int GetID() const
return unique factory id
Definition
MueLu_FactoryBase.hpp:48
MueLu::FactoryBase::~FactoryBase
virtual ~FactoryBase()
Destructor.
Definition
MueLu_FactoryBase.hpp:33
MueLu::Level
Class that holds all level-specific information.
Definition
MueLu_Level.hpp:63
MueLu
Namespace for MueLu classes and methods.
Definition
MueLu_BrickAggregationFactory_decl.hpp:42
src
MueCentral
MueLu_FactoryBase.hpp
Generated by
1.17.0