Arcane  4.1.12.0
User documentation
Loading...
Searching...
No Matches
Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType > Class Template Reference

Public Types

using ThatClass = MeshMaterialVariableScalar<ItemType, DataType>
using ThatInterface = IScalarMeshMaterialVariable<ItemType, DataType>
using BuilderType = typename ThatInterface::BuilderType
using StaticImpl = MeshMaterialVariableCommonStaticImpl<ThatClass>
using ItemTypeTemplate = ItemType
using BaseClass = ItemMaterialVariableScalar<DataType>
using VariableRefType = MeshVariableScalarRefT<ItemType, DataType>
using PrivatePartType = typename BaseClass::PrivatePartType
Public Types inherited from Arcane::Materials::ItemMaterialVariableScalar< DataType >
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 Types inherited from Arcane::Materials::IScalarMeshMaterialVariable< ItemType, DataType >
using ThatInterface = IScalarMeshMaterialVariable<ItemType, DataType>
using ItemTypeType = ItemType
using DataTypeType = DataType
using VariableRefType = MeshVariableScalarRefT<ItemType, DataType>
using BuilderType = MeshMaterialVariableBuildTraits<ThatInterface>

Public Member Functions

VariableRefType * globalVariableReference () const final
void incrementReference () final
ArrayView< ArrayView< DataType > > _internalFullValuesView () final
void fillFromArray (IMeshMaterial *mat, ConstArrayView< DataType > values) final
void fillFromArray (IMeshMaterial *mat, ConstArrayView< DataType > values, Int32ConstArrayView indexes) final
void fillToArray (IMeshMaterial *mat, ArrayView< DataType > values) final
void fillToArray (IMeshMaterial *mat, ArrayView< DataType > values, Int32ConstArrayView indexes) final
void fillPartialValues (const DataType &value) final
IMeshMaterialVariabletoMeshMaterialVariable () final
Public Member Functions inherited from Arcane::Materials::ItemMaterialVariableScalar< DataType >
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 IVariableglobalVariable () 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.
MeshMaterialVariableReffirstReference () const override
IVariablematerialVariable (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.
IMeshMaterialVariableComputeFunctioncomputeFunction () 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
Public Member Functions inherited from Arcane::Materials::IScalarMeshMaterialVariable< ItemType, DataType >
virtual void fillFromArray (IMeshMaterial *mat, ConstArrayView< DataType > values)=0
virtual void fillFromArray (IMeshMaterial *mat, ConstArrayView< DataType > values, Int32ConstArrayView indexes)=0
virtual void fillToArray (IMeshMaterial *mat, ArrayView< DataType > values)=0
virtual void fillToArray (IMeshMaterial *mat, ArrayView< DataType > values, Int32ConstArrayView indexes)=0
virtual void fillPartialValues (const DataType &value)=0

Public Attributes

friend StaticImpl

Protected Member Functions

ARCANE_MATERIALS_EXPORT MeshMaterialVariableScalar (const MaterialVariableBuildInfo &v, PrivatePartType *global_var, VariableRefType *global_var_ref, MatVarSpace mvs)
Protected Member Functions inherited from Arcane::Materials::ItemMaterialVariableScalar< DataType >
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)
Static Public Member Functions inherited from Arcane::Materials::IScalarMeshMaterialVariable< ItemType, DataType >
static constexpr int dimension ()
Protected Attributes inherited from Arcane::Materials::ItemMaterialVariableBase< MaterialVariableScalarTraits< DataType > >
PrivatePartType * m_global_variable
VariableRefm_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

Detailed Description

template<typename ItemType, typename DataType>
class Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >

Definition at line 530 of file MeshMaterialVariable.h.

Member Typedef Documentation

◆ BaseClass

template<typename ItemType, typename DataType>
using Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::BaseClass = ItemMaterialVariableScalar<DataType>

Definition at line 542 of file MeshMaterialVariable.h.

◆ BuilderType

template<typename ItemType, typename DataType>
using Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::BuilderType = typename ThatInterface::BuilderType

Definition at line 538 of file MeshMaterialVariable.h.

◆ ItemTypeTemplate

template<typename ItemType, typename DataType>
using Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::ItemTypeTemplate = ItemType

Definition at line 540 of file MeshMaterialVariable.h.

◆ PrivatePartType

template<typename ItemType, typename DataType>
using Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::PrivatePartType = typename BaseClass::PrivatePartType

Definition at line 544 of file MeshMaterialVariable.h.

◆ StaticImpl

template<typename ItemType, typename DataType>
using Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::StaticImpl = MeshMaterialVariableCommonStaticImpl<ThatClass>

Definition at line 539 of file MeshMaterialVariable.h.

◆ ThatClass

template<typename ItemType, typename DataType>
using Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::ThatClass = MeshMaterialVariableScalar<ItemType, DataType>

Definition at line 536 of file MeshMaterialVariable.h.

◆ ThatInterface

template<typename ItemType, typename DataType>
using Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::ThatInterface = IScalarMeshMaterialVariable<ItemType, DataType>

Definition at line 537 of file MeshMaterialVariable.h.

◆ VariableRefType

template<typename ItemType, typename DataType>
using Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::VariableRefType = MeshVariableScalarRefT<ItemType, DataType>

Definition at line 543 of file MeshMaterialVariable.h.

Constructor & Destructor Documentation

◆ MeshMaterialVariableScalar()

template<typename ItemType, typename DataType>
Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::MeshMaterialVariableScalar ( const MaterialVariableBuildInfo & v,
PrivatePartType * global_var,
VariableRefType * global_var_ref,
MatVarSpace mvs )
protected

Definition at line 780 of file MeshMaterialVariableScalar.cc.

◆ ~MeshMaterialVariableScalar()

template<typename ItemType, typename DataType>
Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::~MeshMaterialVariableScalar ( )
protected

Definition at line 792 of file MeshMaterialVariableScalar.cc.

Member Function Documentation

◆ _internalFullValuesView()

template<typename ItemType, typename DataType>
ArrayView< ArrayView< DataType > > Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::_internalFullValuesView ( )
inlinefinalvirtual

◆ fillFromArray() [1/2]

template<typename ItemType, typename DataType>
void Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::fillFromArray ( IMeshMaterial * mat,
ConstArrayView< DataType > values )
inlinefinal

Definition at line 562 of file MeshMaterialVariable.h.

◆ fillFromArray() [2/2]

template<typename ItemType, typename DataType>
void Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::fillFromArray ( IMeshMaterial * mat,
ConstArrayView< DataType > values,
Int32ConstArrayView indexes )
inlinefinal

Definition at line 566 of file MeshMaterialVariable.h.

◆ fillPartialValues()

template<typename ItemType, typename DataType>
void Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::fillPartialValues ( const DataType & value)
inlinefinal

Definition at line 578 of file MeshMaterialVariable.h.

◆ fillToArray() [1/2]

template<typename ItemType, typename DataType>
void Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::fillToArray ( IMeshMaterial * mat,
ArrayView< DataType > values )
inlinefinal

Definition at line 570 of file MeshMaterialVariable.h.

◆ fillToArray() [2/2]

template<typename ItemType, typename DataType>
void Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::fillToArray ( IMeshMaterial * mat,
ArrayView< DataType > values,
Int32ConstArrayView indexes )
inlinefinal

Definition at line 574 of file MeshMaterialVariable.h.

◆ globalVariableReference()

template<typename ItemType, typename DataType>
VariableRefType * Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::globalVariableReference ( ) const
inlinefinalvirtual

◆ incrementReference()

template<typename ItemType, typename DataType>
void Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::incrementReference ( )
inlinefinalvirtual

◆ toMeshMaterialVariable()

template<typename ItemType, typename DataType>
IMeshMaterialVariable * Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::toMeshMaterialVariable ( )
inlinefinalvirtual

Member Data Documentation

◆ StaticImpl

template<typename ItemType, typename DataType>
friend Arcane::Materials::MeshMaterialVariableScalar< ItemType, DataType >::StaticImpl

Definition at line 546 of file MeshMaterialVariable.h.


The documentation for this class was generated from the following files: