Finite Volume Solver
prototype
A framework to build finite volume solvers for the AG Klein at the Freie Universität Berlin.
|
This class is a polymorphic value type that stores objects which satisfies the TaggingMethod<GriddingAlgorithm> concept. More...
#include <AnyTaggingMethod.hpp>
Public Types | |
using | TagDataHandle = typename GridTraits< GriddingAlgorithm >::TagDataHandle |
Public Member Functions | |
Constructors | |
AnyTaggingMethod ()=default | |
This constructs a method that does nothing on invocation. More... | |
template<typename T , typename = std::enable_if_t<!decays_to<T, AnyTaggingMethod>()>> | |
AnyTaggingMethod (T &&tag) | |
Stores any object which satisfies the tagging method concept. More... | |
AnyTaggingMethod (const AnyTaggingMethod &other) | |
Copies the implementation. More... | |
AnyTaggingMethod & | operator= (const AnyTaggingMethod &other) |
Copies the implementation. More... | |
AnyTaggingMethod (AnyTaggingMethod &&other) noexcept=default | |
Moves the other object without allocating and leaves an empty method. More... | |
AnyTaggingMethod & | operator= (AnyTaggingMethod &&other) noexcept=default |
Moves the other object without allocating and leaves an empty method. More... | |
Member functions | |
void | TagCellsForRefinement (TagDataHandle tags, GriddingAlgorithm &gridding, int level, Duration t) |
Mask cells that need further refinement in a regridding procedure. More... | |
Private Attributes | |
std::unique_ptr< TaggingMethodStrategy_< GriddingAlgorithm > > | tag_ |
This class is a polymorphic value type that stores objects which satisfies the TaggingMethod<GriddingAlgorithm> concept.
using fub::AnyTaggingMethod< GriddingAlgorithm >::TagDataHandle = typename GridTraits<GriddingAlgorithm>::TagDataHandle |
|
default |
This constructs a method that does nothing on invocation.
fub::AnyTaggingMethod< GriddingAlgorithm >::AnyTaggingMethod | ( | T && | tag | ) |
Stores any object which satisfies the tagging method concept.
fub::AnyTaggingMethod< GriddingAlgorithm >::AnyTaggingMethod | ( | const AnyTaggingMethod< GriddingAlgorithm > & | other | ) |
Copies the implementation.
|
defaultnoexcept |
Moves the other
object without allocating and leaves an empty method.
|
defaultnoexcept |
Moves the other
object without allocating and leaves an empty method.
AnyTaggingMethod< GriddingAlgorithm > & fub::AnyTaggingMethod< GriddingAlgorithm >::operator= | ( | const AnyTaggingMethod< GriddingAlgorithm > & | other | ) |
Copies the implementation.
void fub::AnyTaggingMethod< GriddingAlgorithm >::TagCellsForRefinement | ( | TagDataHandle | tags, |
GriddingAlgorithm & | gridding, | ||
int | level, | ||
Duration | t | ||
) |
Mask cells that need further refinement in a regridding procedure.
|
private |