Public Types | |
| using | BaseClass = ItemMaterialVariableBase<MaterialVariableScalarTraits<DataType>> |
| using | Traits = MaterialVariableScalarTraits<DataType> |
| using | ThatClass = ItemMaterialVariableScalar<DataType> |
| using | ContainerViewType = typename Traits::ContainerViewType |
| using | PrivatePartType = typename Traits::PrivatePartType |
| using | ValueDataType = typename Traits::ValueDataType |
| using | ContainerType = typename Traits::ContainerType |
| using | VariableRefType = typename Traits::VariableRefType |
| Public Types inherited from Arcane::Materials::ItemMaterialVariableBase< MaterialVariableScalarTraits< DataType > > | |
| using | TraitsType |
| using | ValueType |
| using | DataType |
| using | ThatClass |
| using | SubViewType |
| using | SubConstViewType |
| using | SubInputViewType |
| using | ContainerSpanType |
| using | ContainerViewType |
| using | ContainerConstViewType |
| using | PrivatePartType |
| using | ValueDataType |
| using | ContainerType |
| using | UniqueContainerType |
| using | VariableRefType |
Public Member Functions | |
| ArrayView< DataType > * | views () |
| DataType | operator[] (MatVarIndex mvi) const |
| ARCANE_MATERIALS_EXPORT void | synchronize () override |
| Synchronizes the variable. | |
| ARCANE_MATERIALS_EXPORT void | synchronize (MeshMaterialVariableSynchronizerList &sync_list) override |
| ARCANE_MATERIALS_EXPORT void | dumpValues (std::ostream &ostr) override |
| Dumps the variable values to the stream ostr. | |
| ARCANE_MATERIALS_EXPORT void | dumpValues (std::ostream &ostr, AllEnvCellVectorView view) override |
| Dumps the variable values for the view view to the stream ostr. | |
| ARCANE_MATERIALS_EXPORT void | serialize (ISerializer *sbuffer, Int32ConstArrayView ids) override |
| Serializes the variable for local ID entities ids. | |
| ARCANE_MATERIALS_EXPORT void | fillFromArray (IMeshMaterial *mat, ConstArrayView< DataType > values) |
| Fills the variable values for a material from an array. | |
| ARCANE_MATERIALS_EXPORT void | fillFromArray (IMeshMaterial *mat, ConstArrayView< DataType > values, Int32ConstArrayView indexes) |
| Fills the variable values for a material from an array. | |
| ARCANE_MATERIALS_EXPORT void | fillToArray (IMeshMaterial *mat, ArrayView< DataType > values) |
| Fills an array from the variable values for a material. | |
| ARCANE_MATERIALS_EXPORT void | fillToArray (IMeshMaterial *mat, ArrayView< DataType > values, Int32ConstArrayView indexes) |
| Fills an array from the variable values for a material. | |
| ARCANE_MATERIALS_EXPORT void | fillPartialValues (const DataType &value) |
| Fills the partial values with the value value. | |
| void | setValue (MatVarIndex mvi, SubInputViewType v) |
| SubConstViewType | value (MatVarIndex mvi) const |
| Public Member Functions inherited from Arcane::Materials::ItemMaterialVariableBase< MaterialVariableScalarTraits< DataType > > | |
| ARCANE_MATERIALS_EXPORT | ItemMaterialVariableBase (const MaterialVariableBuildInfo &v, PrivatePartType *global_var, VariableRef *global_var_ref, MatVarSpace mvs) |
| ARCANE_MATERIALS_EXPORT void | syncReferences () override |
| Synchronizes references. | |
| ARCANE_MATERIALS_EXPORT IVariable * | globalVariable () const override |
| Associated global variable on the mesh. | |
| ARCANE_MATERIALS_EXPORT void | buildFromManager (bool is_continue) override |
| ARCANE_MATERIALS_EXPORT Ref< IData > | _internalCreateSaveDataRef (Integer nb_value) override |
| ARCANE_MATERIALS_EXPORT void | _saveData (IMeshComponent *env, IData *data) override |
| ARCANE_MATERIALS_EXPORT void | _restoreData (IMeshComponent *component, IData *data, Integer data_index, Int32ConstArrayView ids, bool allow_null_id) override |
| ARCANE_MATERIALS_EXPORT void | _copyBetweenPartialAndGlobal (const CopyBetweenPartialAndGlobalArgs &args) override |
| ARCANE_MATERIALS_EXPORT void | _initializeNewItemsWithZero (InitializeWithZeroArgs &args) override |
| ARCANE_MATERIALS_EXPORT void | fillPartialValuesWithGlobalValues () override |
| Fills partial values with the value of the associated global cell. | |
| ARCANE_MATERIALS_EXPORT void | fillPartialValuesWithSuperValues (Int32 level) override |
| Fills partial values with the value of the super cell. If level equals LEVEL_MATERIAL, it copies material values with the middle one. If level equals LEVEL_ENVIRONMENT, it copies environment values with the global cell's. If level equals LEVEL_ALLENVIRONMENT, it fills all partial values with the global cell's value (this makes this method equivalent to fillGlobalValuesWithGlobalValues()). | |
| void | setValue (MatVarIndex mvi, SubInputViewType v) |
| void | setFillValue (MatVarIndex mvi, const DataType &v) |
| SubConstViewType | value (MatVarIndex mvi) const |
| Public Member Functions inherited from Arcane::Materials::MeshMaterialVariable | |
| MeshMaterialVariable (const MaterialVariableBuildInfo &v, MatVarSpace mvs) | |
| String | name () const override |
| Name of the variable. | |
| void | addVariableRef (MeshMaterialVariableRef *var_ref) override |
| Adds a reference to this variable. | |
| void | removeVariableRef (MeshMaterialVariableRef *var_ref) override |
| Removes a reference to this variable. | |
| MeshMaterialVariableRef * | firstReference () const override |
| IVariable * | materialVariable (IMeshMaterial *mat) override |
| void | setKeepOnChange (bool v) override |
| Indicates whether the variable value should be kept after a change in the list of materials. | |
| bool | keepOnChange () const override |
| Indicates whether the variable value should be kept after a change in the list of materials. | |
| MatVarSpace | space () const override |
| Variable definition space (material+environment or environment only). | |
| void | update (IMeshMaterial *mat) override |
| Recalculates the variable for material mat if necessary. | |
| void | setUpToDate (IMeshMaterial *mat) override |
| Indicates that the variable has just been updated. | |
| Int64 | modifiedTime (IMeshMaterial *mat) override |
| Time when the variable was updated. | |
| void | addDepend (IMeshMaterialVariable *var) override |
| Adds var to the dependency list. | |
| void | addDepend (IMeshMaterialVariable *var, const TraceInfo &tinfo) override |
| Adds var to the dependency list with trace info tinfo. | |
| void | addDepend (IVariable *var) override |
| Adds var to the dependency list. | |
| void | addDepend (IVariable *var, const TraceInfo &tinfo) override |
| Adds var to the dependency list with trace info tinfo. | |
| void | removeDepend (IMeshMaterialVariable *var) override |
| Removes var from the dependency list. | |
| void | removeDepend (IVariable *var) override |
| Removes var from the dependency list. | |
| void | setComputeFunction (IMeshMaterialVariableComputeFunction *v) override |
| Sets the variable's recalculation function. | |
| IMeshMaterialVariableComputeFunction * | computeFunction () override |
| Function used to update the variable. | |
| void | dependInfos (Array< VariableDependInfo > &infos, Array< MeshMaterialVariableDependInfo > &mat_infos) override |
| Dependency information. | |
| IMeshMaterialVariableInternal * | _internalApi () override |
| void | incrementReference () |
| Public Member Functions inherited from Arcane::Materials::IMeshMaterialVariable | |
Protected Member Functions | |
| ARCANE_MATERIALS_EXPORT | ItemMaterialVariableScalar (const MaterialVariableBuildInfo &v, PrivatePartType *global_var, VariableRef *global_var_ref, MatVarSpace mvs) |
| ArrayView< ArrayView< DataType > > | _containerView () |
| Protected Member Functions inherited from Arcane::Materials::ItemMaterialVariableBase< MaterialVariableScalarTraits< DataType > > | |
| void | _syncFromGlobalVariable () |
| PrivatePartType * | _trueGlobalVariable () |
| void | _init (ArrayView< PrivatePartType * > vars) |
| ARCANE_MATERIALS_EXPORT void | _fillPartialValuesWithSuperValues (MeshComponentList components) |
| ARCANE_MATERIALS_EXPORT void | _syncReferences (bool check_resize) override |
| ARCANE_MATERIALS_EXPORT void | _resizeForIndexer (ResizeVariableIndexerArgs &args) override |
| ARCANE_MATERIALS_EXPORT void | _copyHostViewsToViews (RunQueue *queue) |
| void | _setView (Int32 index) |
| Positions the views from the container. | |
| ITraceMng * | _traceMng () const |
| void | _copyToBuffer (SmallSpan< const MatVarIndex > matvar_indexes, Span< std::byte > bytes, RunQueue *queue) const |
| void | _copyFromBuffer (SmallSpan< const MatVarIndex > matvar_indexes, Span< const std::byte > bytes, RunQueue *queue) |
Additional Inherited Members | |
| static void | _genericCopyTo (Span< const std::byte > input, SmallSpan< const Int32 > input_indexes, Span< std::byte > output, SmallSpan< const Int32 > output_indexes, const RunQueue &queue, Int32 data_type_size) |
| Protected Attributes inherited from Arcane::Materials::ItemMaterialVariableBase< MaterialVariableScalarTraits< DataType > > | |
| PrivatePartType * | m_global_variable |
| VariableRef * | m_global_variable_ref |
| UniqueArray< PrivatePartType * > | m_vars |
| Variables for different materials. | |
| UniqueArray< ContainerViewType > | m_device_views |
| List of views visible only from the accelerator. | |
| UniqueArray< ContainerViewType > | m_host_views |
| List of views visible only from the host. | |
| MeshMaterialVariablePrivate * | m_p = nullptr |
| UniqueArray< Span< std::byte > > | m_views_as_bytes |
Definition at line 427 of file MeshMaterialVariable.h.
| using Arcane::Materials::ItemMaterialVariableScalar< DataType >::BaseClass = ItemMaterialVariableBase<MaterialVariableScalarTraits<DataType>> |
Definition at line 432 of file MeshMaterialVariable.h.
| using Arcane::Materials::ItemMaterialVariableScalar< DataType >::ContainerType = typename Traits::ContainerType |
Definition at line 439 of file MeshMaterialVariable.h.
| using Arcane::Materials::ItemMaterialVariableScalar< DataType >::ContainerViewType = typename Traits::ContainerViewType |
Definition at line 436 of file MeshMaterialVariable.h.
| using Arcane::Materials::ItemMaterialVariableScalar< DataType >::PrivatePartType = typename Traits::PrivatePartType |
Definition at line 437 of file MeshMaterialVariable.h.
| using Arcane::Materials::ItemMaterialVariableScalar< DataType >::ThatClass = ItemMaterialVariableScalar<DataType> |
Definition at line 434 of file MeshMaterialVariable.h.
| using Arcane::Materials::ItemMaterialVariableScalar< DataType >::Traits = MaterialVariableScalarTraits<DataType> |
Definition at line 433 of file MeshMaterialVariable.h.
| using Arcane::Materials::ItemMaterialVariableScalar< DataType >::ValueDataType = typename Traits::ValueDataType |
Definition at line 438 of file MeshMaterialVariable.h.
| using Arcane::Materials::ItemMaterialVariableScalar< DataType >::VariableRefType = typename Traits::VariableRefType |
Definition at line 440 of file MeshMaterialVariable.h.
|
protected |
Definition at line 135 of file MeshMaterialVariableScalar.cc.
|
inlineprotected |
Definition at line 455 of file MeshMaterialVariable.h.
|
overridevirtual |
Dumps the variable values to the stream ostr.
Implements Arcane::Materials::IMeshMaterialVariable.
Definition at line 686 of file MeshMaterialVariableScalar.cc.
References Arcane::IItemFamily::allItems(), dumpValues(), Arcane::Materials::MeshMaterialVariable::name(), and Arcane::Materials::IMeshMaterialMng::view().
Referenced by dumpValues().
|
overridevirtual |
Dumps the variable values for the view view to the stream ostr.
Implements Arcane::Materials::IMeshMaterialVariable.
Definition at line 664 of file MeshMaterialVariableScalar.cc.
References ENUMERATE_ALLENVCELL, Arcane::Materials::ConstituentItem::globalCell(), and Arcane::Materials::MeshMaterialVariable::name().
| void Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillFromArray | ( | IMeshMaterial * | mat, |
| ConstArrayView< DataType > | values ) |
Fills the variable values for a material from an array.
This method performs the following operation:
Definition at line 162 of file MeshMaterialVariableScalar.cc.
References ENUMERATE_COMPONENTITEM.
| void Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillFromArray | ( | IMeshMaterial * | mat, |
| ConstArrayView< DataType > | values, | ||
| Int32ConstArrayView | indexes ) |
Fills the variable values for a material from an array.
This method performs the following operation:
Definition at line 191 of file MeshMaterialVariableScalar.cc.
References Arcane::Materials::IMeshComponent::_internalApi(), and Arcane::ConstArrayView< T >::size().
| void Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillPartialValues | ( | const DataType & | value | ) |
Fills the partial values with the value value.
Fills partial values with the value value.
Definition at line 265 of file MeshMaterialVariableScalar.cc.
| void Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillToArray | ( | IMeshMaterial * | mat, |
| ArrayView< DataType > | values ) |
Fills an array from the variable values for a material.
This method performs the following operation:
Definition at line 219 of file MeshMaterialVariableScalar.cc.
References ENUMERATE_COMPONENTITEM.
| void Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillToArray | ( | IMeshMaterial * | mat, |
| ArrayView< DataType > | values, | ||
| Int32ConstArrayView | indexes ) |
Fills an array from the variable values for a material.
This method performs the following operation:
Definition at line 247 of file MeshMaterialVariableScalar.cc.
References Arcane::Materials::IMeshComponent::_internalApi(), and Arcane::ConstArrayView< T >::size().
|
inline |
Definition at line 459 of file MeshMaterialVariable.h.
|
overridevirtual |
Serializes the variable for local ID entities ids.
Implements Arcane::Materials::IMeshMaterialVariable.
Definition at line 701 of file MeshMaterialVariableScalar.cc.
References Arcane::Array< T >::add(), Arcane::Array< T >::data(), Arcane::DT_Int64, ENUMERATE_ALLENVCELL, ENUMERATE_CELL_ENVCELL, ENUMERATE_CELL_MATCELL, Arcane::Materials::Environment, Arcane::ISerializer::getInt64(), Arcane::ISerializer::getSpan(), Arcane::ITraceMng::info(), Arcane::ISerializer::mode(), Arcane::ISerializer::ModeGet, Arcane::ISerializer::ModePut, Arcane::ISerializer::putInt64(), Arcane::ISerializer::putSpan(), Arcane::ISerializer::reserve(), Arcane::ISerializer::reserveSpan(), Arcane::Array< T >::resize(), Arcane::AbstractArray< T >::size(), Arcane::ConstArrayView< T >::size(), Arcane::Materials::MeshMaterialVariable::space(), Arcane::IItemFamily::traceMng(), and Arcane::IItemFamily::view().
|
inline |
Definition at line 335 of file MeshMaterialVariable.h.
|
overridevirtual |
Synchronizes the variable.
Synchronization is performed across all materials of the cell. It is essential that all ghost cells already have the correct number of materials.
Implements Arcane::Materials::IMeshMaterialVariable.
Definition at line 345 of file MeshMaterialVariableScalar.cc.
References Arcane::Parallel::IStat::add(), Arcane::Timer::lastActivationTime(), Arcane::IParallelMng::stat(), Arcane::IParallelMng::timerMng(), and Arcane::Timer::TimerReal.
|
overridevirtual |
Implements Arcane::Materials::IMeshMaterialVariable.
Definition at line 393 of file MeshMaterialVariableScalar.cc.
|
inline |
Definition at line 345 of file MeshMaterialVariable.h.
|
inline |
Definition at line 451 of file MeshMaterialVariable.h.