ComponentInitialConditionInterface

The ComponentInitialConditionInterface is a base class designed to facilitate the use of Physics by an ActionComponent. It offers:

An ActionComponent inheriting ComponentInitialConditionInterface must be registered to the init_component_physics and check_integrity tasks. For example,

registerMooseAction("MooseApp", CylinderComponent, "add_mesh_generator");
// CylinderComponent is an example of ComponentPhysicsInterface
registerMooseAction("MooseApp", CylinderComponent, "init_component_physics");
// CylinderComponent is an example of ComponentMaterialPropertyInterface
registerMooseAction("MooseApp", CylinderComponent, "add_material");
// CylinderComponent is an example of ComponentInitialConditionInterface
registerMooseAction("MooseApp", CylinderComponent, "check_integrity");
registerActionComponent("MooseApp", CylinderComponent);
(moose/framework/src/actioncomponents/CylinderComponent.C)
commentnote

This helper leverages virtual inheritance: it inherits the ActionComponent class virtually. This offers some simplicity in its definition, but components leveraging this helper must also inherit the ActionComponent class virtually.