Interface of a component (material or environment) of a mesh. More...
#include <arcane/core/materials/IMeshComponent.h>
Public Member Functions | |
| virtual IMeshMaterialMng * | materialMng ()=0 |
| Associated manager. | |
| virtual ITraceMng * | traceMng ()=0 |
| Associated trace manager. | |
| virtual String | name () const =0 |
| Component name. | |
| virtual CellGroup | cells () const =0 |
| Group of cells for this material. | |
| virtual Int32 | id () const =0 |
| Component identifier. | |
| virtual ComponentCell | findComponentCell (AllEnvCell c) const =0 |
| Cell of this component for cell c. | |
| virtual ComponentItemVectorView | view () const =0 |
| View associated with this component. | |
| virtual void | checkValid ()=0 |
| Checks that the component is valid. | |
| virtual bool | isMaterial () const =0 |
| True if the component is a material. | |
| virtual bool | isEnvironment () const =0 |
| True if the component is an environment. | |
| virtual bool | hasSpace (MatVarSpace space) const =0 |
| Indicates if the component is defined for space space. | |
| virtual ComponentPurePartItemVectorView | pureItems () const =0 |
| View on the list of pure entities (associated with the global cell) of the component. | |
| virtual ComponentImpurePartItemVectorView | impureItems () const =0 |
| View on the list of impure (partial) entities of the component. | |
| virtual ComponentPartItemVectorView | partItems (eMatPart part) const =0 |
| View on the pure or impure part of the component's entities. | |
| virtual IMeshMaterial * | asMaterial ()=0 |
| Returns the component in the form of an IMeshMaterial. | |
| virtual IMeshEnvironment * | asEnvironment ()=0 |
| Returns the component in the form of an IMeshMaterial. | |
| virtual void | setSpecificExecutionPolicy (Accelerator::eExecutionPolicy policy)=0 |
| Sets an execution policy for this constituent. | |
| virtual Accelerator::eExecutionPolicy | specificExecutionPolicy () const =0 |
| Specific execution policy. | |
| virtual IMeshComponentInternal * | _internalApi ()=0 |
| Internal API. | |
Interface of a component (material or environment) of a mesh.
Definition at line 36 of file core/materials/IMeshComponent.h.
|
pure virtual |
Internal API.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
Referenced by Arcane::Materials::MaterialModifierOperation::_checkMaterialPresence(), Arcane::Materials::MaterialModifierOperation::_filterValidIds(), Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillFromArray(), Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillToArray(), and Arcane::Materials::MeshMaterialVariable::materialVariable().
|
pure virtual |
Returns the component in the form of an IMeshMaterial.
If isEnvironment()==false, returns nullptr
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
|
pure virtual |
Returns the component in the form of an IMeshMaterial.
If isMaterial()==false, returns nullptr
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
|
pure virtual |
Group of cells for this material.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
Referenced by Arcane::Materials::MaterialModifierOperation::_checkMaterialPresence(), Arcane::Materials::MaterialModifierOperation::_filterValidIds(), Arcane::Materials::MeshEnvironment::computeNbMatPerCell(), Arcane::Materials::CellMaterialVariableScalarRef< DataType_ >::fillToArray(), and Arcane::Materials::CellMaterialVariableScalarRef< DataType_ >::fillToArray().
|
pure virtual |
Checks that the component is valid.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
|
pure virtual |
Cell of this component for cell c.
If the component is not present in the cell, the null cell is returned.
The cost of this function is proportional to the number of components present in the cell.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
|
pure virtual |
Indicates if the component is defined for space space.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
|
pure virtual |
Component identifier.
It is also the index (starting from 0) of this component in the list of components of this type. There is a specific list for materials and environments and therefore a component representing a material can have the same ID as a component representing an environment.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
Referenced by Arcane::Materials::MeshMaterialVariable::modifiedTime(), Arcane::Materials::MeshMaterialVariable::setUpToDate(), and Arcane::Materials::MeshMaterialVariable::update().
|
pure virtual |
View on the list of impure (partial) entities of the component.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
|
pure virtual |
True if the component is an environment.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
Referenced by Arcane::Materials::ConstituentItemVectorImpl::_computeNbPureAndImpureLegacy(), and Arcane::Materials::MeshMaterialBackup::_isValidComponent().
|
pure virtual |
True if the component is a material.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
|
pure virtual |
Associated manager.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
|
pure virtual |
Component name.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
Referenced by Arcane::Materials::MaterialModifierOperation::_checkMaterialPresence(), Arcane::Materials::MeshBlock::addEnvironment(), Arcane::Materials::MeshBlockBuildInfo::addEnvironment(), Arcane::Materials::MeshMaterialMng::checkValid(), and Arcane::Materials::MeshBlock::removeEnvironment().
|
pure virtual |
View on the pure or impure part of the component's entities.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
|
pure virtual |
View on the list of pure entities (associated with the global cell) of the component.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
|
pure virtual |
Sets an execution policy for this constituent.
The selected execution policy will be used for creation or modification operations of EnvCellVector, MatCellVector or ComponentItemVector.
If policy equals Accelerator::eExecutionPolicy::None (the default), the policy of the associated IMeshMaterialMng is used. If it equals Accelerator::eExecutionPolicy::Sequential or Accelerator::eExecutionPolicy::Thread, then execution will take place on the host sequentially or multi-threaded. Other values are invalid.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
|
pure virtual |
Specific execution policy.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
|
pure virtual |
Associated trace manager.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.
Referenced by Arcane::Materials::MaterialModifierOperation::_checkMaterialPresence(), and Arcane::Materials::MaterialModifierOperation::_filterValidIds().
|
pure virtual |
View associated with this component.
Implemented in Arcane::Materials::MeshEnvironment, and Arcane::Materials::MeshMaterial.