19 params.
addParam<
bool>(
"verbose",
false,
"Whether the component setup should be verbose");
31 _dimension(
libMesh::invalid_uint),
32 _verbose(getParam<bool>(
"verbose")),
80 if (!registered_tasks.count(required_task))
82 "Task '" + required_task +
83 "' has been declared as required by a Component parent class of derived class '" +
85 "' but this task is not registered to the derived class. Registered tasks for "
86 "this Component are: " +
102 for (
auto * member : *other_group)
Base class for components that are defined using an action.
virtual void actOnAdditionalTasks()
Use this if registering a new task to the derived ActionComponent.
virtual void addPhysics()
Used to add one or more Physics to be active on the component.
virtual void addMaterials()
Used to add materials or functor materials on a component.
void checkRequiredTasks() const
Checks that tasks marked required by parent classes are indeed registered to derived classes.
virtual void act() override final
Method to add objects to the simulation or perform other setup tasks.
void addConnectedComponent(ActionComponent &component)
Merge another component's group into this component's group.
virtual void addUserObjects()
std::set< std::string > _required_tasks
Manually keeps track of the tasks required by each component as tasks cannot be inherited.
virtual void addPositionsObject()
std::shared_ptr< std::set< ActionComponent * > > _connected_components
Group of components that share a common mesh after junctioning.
virtual void checkIntegrity()
Used for various checks notably:
virtual void setupComponent()
static InputParameters validParams()
virtual void addMeshGenerators()
ActionComponent(const InputParameters ¶ms)
virtual void addSolverVariables()
Used to add variables on a component.
std::set< std::string > getTasksByAction(const std::string &action) const
static InputParameters validParams()
const std::string & _current_task
The current action (even though we have separate instances for each action)
const std::string & type() const
Get the type of this class.
ActionFactory & _action_factory
Builds Actions.
void mooseWarning(Args &&... args) const
std::string stringify(const T &t)
conversion to string
The following methods are specializations for using the libMesh::Parallel::packed_range_* routines fo...