20 #define flagInvalidSolution(message) \ 23 static const auto __invalid_id = this->registerInvalidSolutionInternal(message, false); \ 24 this->flagInvalidSolutionInternal<false>(__invalid_id); \ 27 #define flagSolutionWarning(message) \ 30 static const auto __invalid_id = this->registerInvalidSolutionInternal(message, true); \ 31 this->flagInvalidSolutionInternal<true>(__invalid_id); \ 36 #define flagSolutionWarningMultipleRegistration(message) \ 39 const auto __invalid_id = this->registerInvalidSolutionInternal(message, true); \ 40 this->flagInvalidSolutionInternal<true>(__invalid_id); \ 45 #define usingCombinedWarningSolutionWarnings \ 46 using SolutionInvalidInterface::mooseWarning; \ 47 using SolutionInvalidInterface::mooseWarningNonPrefixed; \ 48 using SolutionInvalidInterface::mooseDeprecated; \ 49 using SolutionInvalidInterface::paramWarning 50 #define usingMooseBaseWarnings \ 51 using MooseBase::mooseWarning; \ 52 using MooseBase::mooseWarningNonPrefixed; \ 53 using MooseBase::mooseDeprecated; \ 54 using MooseBase::paramWarning 64 #ifdef MOOSE_KOKKOS_ENABLED 72 template <
typename... Args>
75 _si_moose_base.MooseBase::mooseWarning(std::forward<Args>(args)...);
79 template <
typename... Args>
82 _si_moose_base.MooseBase::mooseWarningNonPrefixed(std::forward<Args>(args)...);
86 template <
typename... Args>
89 _si_moose_base.MooseBase::mooseDeprecated(std::forward<Args>(args)...);
93 template <
typename... Args>
96 _si_moose_base.MooseBase::paramWarning(param, std::forward<Args>(args)...);
97 flagSolutionWarningMultipleRegistration(
_si_moose_base.
name() +
": warning for parameter '" +
102 template <
bool warning>
107 const bool warning)
const;
const FEProblemBase * _si_problem
A pointer to FEProblem base.
Base class for everything in MOOSE with a name and a type.
unsigned int InvalidSolutionID
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
InvalidSolutionID registerInvalidSolutionInternal(const std::string &message, const bool warning) const
An interface that allows the marking of invalid solutions during a solve.
void mooseWarning(Args &&... args) const
const std::string & name() const
Get the name of the class.
void mooseWarningNonPrefixed(Args &&... args) const
void mooseDeprecated(Args &&... args) const
void flagInvalidSolutionInternal(const InvalidSolutionID invalid_solution_id) const
Set solution invalid mark for the given solution ID.
SolutionInvalidInterface(const MooseBase *const moose_base, const InputParameters ¶ms)
void paramWarning(const std::string ¶m, Args... args) const
const MooseBase & _si_moose_base
The MooseBase that owns this interface.