www.mooseframework.org
AddExternalAuxVariableAction.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
11 #include "ExternalProblem.h"
12 
13 registerMooseAction("MooseApp", AddExternalAuxVariableAction, "add_external_aux_variables");
14 
17 {
18  return Action::validParams();
19 }
20 
22  : Action(params)
23 {
24 }
25 
26 void
28 {
29  auto external_problem_ptr = std::dynamic_pointer_cast<ExternalProblem>(_problem);
30 
31  if (external_problem_ptr)
32  external_problem_ptr->addExternalVariables();
33 }
registerMooseAction("MooseApp", AddExternalAuxVariableAction, "add_external_aux_variables")
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
std::unique_ptr< T_DEST, T_DELETER > dynamic_pointer_cast(std::unique_ptr< T_SRC, T_DELETER > &src)
These are reworked from https://stackoverflow.com/a/11003103.
Action for creating Auxiliary variables.
Base class for actions.
Definition: Action.h:38
virtual void addExternalVariables()
Method called to add AuxVariables to the simulation.
static InputParameters validParams()
Definition: Action.C:24
virtual void act() override
Method to add objects to the simulation or perform other setup tasks.
static InputParameters validParams()
Class constructor.
std::shared_ptr< FEProblemBase > & _problem
Convenience reference to a problem this action works on.
Definition: Action.h:179
AddExternalAuxVariableAction(const InputParameters &params)