29 params.
addParam<std::vector<std::string>>(
32 "The Controls that this control relies upon (i.e. must execute before this one)");
48 _fe_problem(*getCheckedPointerParam<
FEProblemBase *>(
"_fe_problem_base")),
49 _depends_on(getParam<
std::vector<
std::string>>(
"depends_on")),
50 _input_parameter_warehouse(_app.getInputParameterWarehouse())
54 "Controls executed on timestep_end often have undefined behavior when repeating "
61 ::mooseDeprecated(
"The 'getExecuteOptions' was replaced by the ExecFlagEnum class because MOOSE "
62 "was updated to use this for the execute flags and the new function provides "
63 "additional arguments for modification of the enum.");
85 const std::string & object_name,
86 const std::string & param_name)
94 const std::string & param_name)
107 "' was not located for the '",
109 "' object, it either does not exist or has not been declared as controllable.");
const ExecFlagType EXEC_PRE_MULTIAPP_SETUP
const ExecFlagType EXEC_TIMESTEP_END
const ExecFlagType EXEC_INITIAL
static InputParameters validParams()
Class constructor.
static MultiMooseEnum getExecuteOptions()
(DEPRECATED) Return the valid "execute_on" options for Control objects
ControllableParameter getControllableParameterByName(const std::string ¶m_name)
bool hasControllableParameterByName(const std::string &name) const
InputParameterWarehouse & _input_parameter_warehouse
A reference to the InputParameterWarehouse which is used for access the parameter objects.
Control(const InputParameters ¶meters)
FEProblemBase & _fe_problem
Reference to the FEProblemBase for this object.
The ControllableParameter class is simply a set of ControllableItem objects.
bool empty()
Return true if the container is empty.
A MultiMooseEnum object to hold "execute_on" flags.
void addAvailableFlags(const ExecFlagType &flag, Args... flags)
Add additional execute_on flags to the list of possible flags.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
const ExecFlagType & getCurrentExecuteOnFlag() const
Return/set the current execution flag.
Interface for objects that need to use functions.
static InputParameters validParams()
bool testReStep() const
Whether or not this simulation should fail a timestep and repeat (for testing).
void paramInfo(const std::string ¶m, Args... args) const
Emits an informational message prefixed with the file and line number of the given param (from the in...
const std::string & name() const
Get the name of the class.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type and optionally a file path to the top-level block p...
A class for storing the names of MooseObject by tag and object name.
A class for storing an input parameter name.
Every object that can be built by the factory should be derived from this class.
static InputParameters validParams()
MooseApp & _app
The MOOSE application this is associated with.
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type.
Interface for objects interacting with the PerfGraph.
Interface class for classes which interact with Postprocessors.
Interface to allow object to consume Reporter values.
A class for creating restricted objects.
static InputParameters validParams()
const ExecFlagEnum & getExecuteOnEnum() const
Return the execute on MultiMooseEnum for this object.
void mooseDeprecated(Args &&... args) const
Interface for objects that needs transient capabilities.
static InputParameters validParams()
Interface for objects that need to use UserObjects.
ExecFlagEnum getDefaultExecFlagEnum()