113 virtual void act() = 0;
140 const std::string & param_name,
RelationshipManagerType
Main types of Relationship Managers.
ActionWarehouse & _awh
Reference to ActionWarehouse where we store object build by actions.
Generic factory class for build all sorts of objects.
Action(const InputParameters ¶meters)
const InputParameters & parameters() const
Get the parameters of the object.
Base class for MOOSE-based applications.
Storage for action instances.
static const std::string unique_action_name_param
The name of the parameter that contains the unique action name.
MooseObjectName uniqueName() const
bool addRelationshipManager(Moose::RelationshipManagerType input_rm_type, const InputParameters &moose_object_pars, std::string rm_name, Moose::RelationshipManagerType rm_type, Moose::RelationshipManagerInputParameterCallback rm_input_parameter_func, Moose::RMSystemType sys_type=Moose::RMSystemType::NONE)
Method for adding a single relationship manager.
MooseObjectName uniqueActionName() const
The unique name for accessing input parameters of this action in the InputParameterWarehouse.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
std::string _specific_task_name
This member will only be populated if this Action instance is only designed to handle one task...
static InputParameters validParams()
std::string _registered_identifier
std::set< std::string > _all_tasks
A list of all the tasks that this Action will satisfy.
std::shared_ptr< MooseMesh > & _displaced_mesh
std::function< void(const InputParameters &, InputParameters &)> RelationshipManagerInputParameterCallback
The type for the callback to set RelationshipManager parameters.
Specialized factory for generic Action System objects.
const std::set< std::string > & getAllTasks() const
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
const std::string & _current_task
The current action (even though we have separate instances for each action)
Executioners are objects that do the actual work of solving your problem.
MooseApp & _app
The MOOSE application this is associated with.
Interface for objects interacting with the PerfGraph.
std::shared_ptr< MooseMesh > & _mesh
void timedAct()
The method called externally that causes the action to act()
void associateWithParameter(const std::string ¶m_name, InputParameters ¶ms) const
Associates the object's parameters params with the input location from this Action's parameter with t...
bool addRelationshipManagers(Moose::RelationshipManagerType when_type, const InputParameters &moose_object_pars)
Method to add a relationship manager for the objects being added to the system.
std::shared_ptr< FEProblemBase > & _problem
Convenience reference to a problem this action works on.
virtual void act()=0
Method to add objects to the simulation or perform other setup tasks.
const std::string & specificTaskName() const
Base class shared by both Action and MooseObject.
A class for storing the names of MooseObject by tag and object name.
void appendTask(const std::string &task)
virtual ~Action()=default