Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT > Class Template Reference

Scalar partial variable on a mesh entity type. More...

#include <arcane/core/MeshPartialVariableArrayRef.h>

Inheritance diagram for Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >:
Collaboration diagram for Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >:

Public Types

typedef DataTypeT DataType
typedef ItemTypeT ItemType
typedef UniqueArray2< DataType > ValueType
typedef ConstArrayView< DataType > ConstReturnReferenceType
typedef ArrayView< DataType > ReturnReferenceType
typedef ItemLocalIdT< ItemType > ItemLocalIdType
typedef ItemPartialVariableArrayRefT< DataType > BaseClass
typedef ItemTraitsT< ItemType >::ItemGroupType GroupType
typedef MeshPartialVariableArrayRefT< ItemType, DataType > ThatClass
typedef ArrayView< DataType > ArrayType
typedef ConstArrayView< DataType > ConstArrayType
Public Types inherited from Arcane::ItemPartialVariableArrayRefT< DataTypeT >
typedef DataTypeT DataType
typedef UniqueArray2< DataType > ValueType
typedef ConstArrayView< DataType > ConstReturnReferenceType
typedef ArrayView< DataType > ReturnReferenceType

Public Member Functions

 MeshPartialVariableArrayRefT (const VariableBuildInfo &vb)
 Constructs a reference to the variable specified in vb.
 MeshPartialVariableArrayRefT (const MeshPartialVariableArrayRefT< ItemType, DataType > &rhs)
 Constructs a reference from rhs.
void refersTo (const MeshPartialVariableArrayRefT< ItemType, DataType > &rhs)
 Positions the instance reference to the variable rhs.
ConstArrayType operator[] (const ItemLocalIdType &i) const
ArrayType operator[] (const ItemLocalIdType &i)
ConstArrayType operator[] (const ItemGroupRangeIteratorT< ItemType > &i) const
ArrayType operator[] (const ItemGroupRangeIteratorT< ItemType > &i)
ConstArrayType operator[] (const ItemPairEnumeratorSubT< ItemType > &i) const
ArrayType operator[] (const ItemPairEnumeratorSubT< ItemType > &i)
ConstArrayType operator[] (const ItemEnumeratorT< ItemType > &i) const
ArrayType operator[] (const ItemEnumeratorT< ItemType > &i)
ConstArrayType operator[] (ItemEnumeratorIndexT< ItemType > i) const
ArrayType operator[] (ItemEnumeratorIndexT< ItemType > i)
GroupType itemGroup () const
 Group associated with the quantity.
Public Member Functions inherited from Arcane::ItemPartialVariableArrayRefT< DataTypeT >
 ItemPartialVariableArrayRefT (const VariableBuildInfo &vb, eItemKind ik)
 Constructs a reference to the variable specified in vb.
 ItemPartialVariableArrayRefT (IVariable *var)
 Constructs a reference from var.
 ItemPartialVariableArrayRefT (const ItemPartialVariableArrayRefT< DataType > &rhs)
 Constructs a reference from rhs.
void fill (const DataType &value)
void copy (const ItemPartialVariableArrayRefT< DataType > &v)
void internalSetUsed (bool v)
ConstArrayType operator[] (const Item &i) const
ArrayType operator[] (const Item &i)
ConstArrayType operator[] (const ItemGroupRangeIterator &i) const
ArrayType operator[] (const ItemGroupRangeIterator &i)
ConstArrayType operator[] (const ItemEnumerator &i) const
ArrayType operator[] (const ItemEnumerator &i)
ConstArrayType operator[] (ItemEnumeratorIndex i) const
ArrayType operator[] (ItemEnumeratorIndex i)
GroupIndexTableView tableView () const
 View of the group indirection table.
Public Member Functions inherited from Arcane::PrivateVariableArrayT< DataTypeT >
Array2View< DataTypeT > asArray ()
Integer totalNbElement () const
Integer arraySize () const
 If the variable is an array, returns its dimension, otherwise returns 0.
bool isArrayVariable () const
void updateFromInternal ()
 Updates from the internal part.
ItemGroup itemGroup () const
void resize (Int32 dim2_size)
void resizeAndReshape (const ArrayShape &shape)
SmallSpan2< DataTypeT > _internalSpan ()
SmallSpan2< const DataTypeT > _internalConstSpan () const
Public Member Functions inherited from Arcane::MeshVariableRef
 MeshVariableRef (const VariableBuildInfo &vb)
 Constructs a reference linked to the module.
void synchronize ()
void synchronize (Int32ConstArrayView local_ids)
Public Member Functions inherited from Arcane::VariableRef
virtual ~VariableRef ()
 Releases resources.
ISubDomainsubDomain () const
 Sub-domain associated with the variable (TODO deprecate end of 2023).
IVariableMngvariableMng () const
 Variable manager associated with the variable.
String name () const
 Variable name.
virtual eDataType dataType () const
 Variable type (Real, Integer, ...).
virtual void print (std::ostream &o) const
 Prints the variable value.
virtual IModulemodule () const
 Module associated with the variable (or nullptr, if none).
virtual int property () const
 Variable properties.
virtual int referenceProperty () const
 Reference properties (internal).
virtual void setProperty (int property)
 Sets the property property.
virtual void unsetProperty (int property)
 Unsets the property property.
virtual void registerVariable ()
 Registers the variable (internal).
virtual void unregisterVariable ()
 Unregisters the variable (internal).
IVariablevariable () const
 Associated variable.
virtual Integer checkIfSync (int max_print=0)
 Checks if the variable is synchronized.
virtual Integer checkIfSameOnAllReplica (int max_print=0)
 Checks if the variable has the same values on all replicas.
void setUsed (bool v)
bool isUsed () const
const StringassignmentStackTrace () const
 Call stack at the time of assigning this instance.
void addTag (const String &tagname, const String &tagvalue)
 Adds the tag tagname with the value tagvalue.
void removeTag (const String &tagname)
 Removes the tag tagname.
bool hasTag (const String &tagname) const
 true if the variable has the tag tagname
String tagValue (const String &tagname) const
 Value of the tag tagname. The string is null if the tag does not exist.
void update ()
 Recalculates the variable if necessary.
void setUpToDate ()
 Indicates that the variable has just been updated.
Int64 modifiedTime ()
 Time when the variable was updated.
void addDependCurrentTime (const VariableRef &var)
 Adds var to the dependency list at the current time.
void addDependCurrentTime (const VariableRef &var, const TraceInfo &tinfo)
 Adds var to the dependency list at the current time with trace info tinfo.
void addDependPreviousTime (const VariableRef &var)
 Adds var to the dependency list at the previous time.
void addDependPreviousTime (const VariableRef &var, const TraceInfo &tinfo)
 Adds var to the dependency list at the previous time with trace info tinfo.
void removeDepend (const VariableRef &var)
 Removes var from the dependency list.
template<typename ClassType>
void setComputeFunction (ClassType *instance, void(ClassType::*func)())
 Sets the variable's recalculation function.
template<typename ClassType>
void setComputeFunction (ClassType *instance, void(ClassType::*func)(), const TraceInfo &tinfo)
 Sets the variable's recalculation function.
VariableRefpreviousReference ()
 Previous reference (or null) to variable().
VariableRefnextReference ()
 Next reference (or null) to variable().
void setPreviousReference (VariableRef *v)
 Sets the previous reference.
void setNextReference (VariableRef *v)
 Sets the next reference.

Static Private Member Functions

static VariableInfo _buildVariableInfo (const VariableBuildInfo &vbi)
static VariableTypeInfo _buildVariableTypeInfo ()
static VariableRef_autoCreate (const VariableBuildInfo &vb)

Static Private Attributes

static VariableFactoryRegisterer m_auto_registerer

Additional Inherited Members

static void setTraceCreation (bool v)
static bool hasTraceCreation ()
Protected Types inherited from Arcane::ItemPartialVariableArrayRefT< DataTypeT >
typedef PrivateVariableArrayT< DataType > BaseClass
typedef BaseClass::PrivatePartType PrivatePartType
typedef ArrayView< DataType > ArrayType
typedef ConstArrayView< DataType > ConstArrayType
Protected Types inherited from Arcane::PrivateVariableArrayT< DataTypeT >
typedef DataTypeT & DataTypeReturnReference
typedef Array2VariableT< DataTypeT > PrivatePartType
Protected Member Functions inherited from Arcane::ItemPartialVariableArrayRefT< DataTypeT >
void operator= (const ItemPartialVariableArrayRefT< DataType > &rhs)
 Copy assignment operator.
Protected Member Functions inherited from Arcane::PrivateVariableArrayT< DataTypeT >
 PrivateVariableArrayT (const VariableBuildInfo &vb, const VariableInfo &vi)
void operator= (const PrivateVariableArrayT &rhs)
void _internalInit ()
Protected Member Functions inherited from Arcane::MeshVariableRef
 MeshVariableRef (const MeshVariableRef &rhs)
 MeshVariableRef (IVariable *var)
void operator= (const MeshVariableRef &rhs)
void _internalInit (IVariable *)
Protected Member Functions inherited from Arcane::VariableRef
 VariableRef (const VariableBuildInfo &vbi)
 Constructs a reference to a variable with the infos vbi.
 VariableRef (const VariableRef &from)
 Copy constructor.
 VariableRef (IVariable *var)
 Constructs a reference to a variable var.
VariableRefoperator= (const VariableRef &from)
 Copy assignment operator.
 VariableRef ()
 Default constructor.
void _setComputeFunction (IVariableComputeFunction *v)
void _internalInit (IVariable *)
 Internal initialization of the variable.
IVariable_variable () const
 Referenced variable.
void _executeUpdateFunctors ()
void _internalAssignVariable (const VariableRef &var)
Static Protected Member Functions inherited from Arcane::ItemPartialVariableArrayRefT< DataTypeT >
static VariableInfo _buildVariableInfo (const VariableBuildInfo &vbi, eItemKind ik)
static VariableTypeInfo _buildVariableTypeInfo (eItemKind ik)
Protected Attributes inherited from Arcane::ItemPartialVariableArrayRefT< DataTypeT >
SharedPtrT< GroupIndexTablem_table
Protected Attributes inherited from Arcane::PrivateVariableArrayT< DataTypeT >
PrivatePartType * m_private_part
Array2View< DataTypeT > m_view
bool m_has_trace = false

Detailed Description

template<typename ItemTypeT, typename DataTypeT>
class Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >

Scalar partial variable on a mesh entity type.

Definition at line 148 of file MeshPartialVariableArrayRef.h.

Member Typedef Documentation

◆ ArrayType

template<typename ItemTypeT, typename DataTypeT>
typedef ArrayView<DataType> Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::ArrayType

Definition at line 168 of file MeshPartialVariableArrayRef.h.

◆ BaseClass

template<typename ItemTypeT, typename DataTypeT>
typedef ItemPartialVariableArrayRefT<DataType> Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::BaseClass

Definition at line 162 of file MeshPartialVariableArrayRef.h.

◆ ConstArrayType

template<typename ItemTypeT, typename DataTypeT>
typedef ConstArrayView<DataType> Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::ConstArrayType

Definition at line 169 of file MeshPartialVariableArrayRef.h.

◆ ConstReturnReferenceType

template<typename ItemTypeT, typename DataTypeT>
typedef ConstArrayView<DataType> Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::ConstReturnReferenceType

Definition at line 156 of file MeshPartialVariableArrayRef.h.

◆ DataType

template<typename ItemTypeT, typename DataTypeT>
typedef DataTypeT Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::DataType

Definition at line 153 of file MeshPartialVariableArrayRef.h.

◆ GroupType

template<typename ItemTypeT, typename DataTypeT>
typedef ItemTraitsT<ItemType>::ItemGroupType Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::GroupType

Definition at line 164 of file MeshPartialVariableArrayRef.h.

◆ ItemLocalIdType

template<typename ItemTypeT, typename DataTypeT>
typedef ItemLocalIdT<ItemType> Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::ItemLocalIdType

Definition at line 158 of file MeshPartialVariableArrayRef.h.

◆ ItemType

template<typename ItemTypeT, typename DataTypeT>
typedef ItemTypeT Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::ItemType

Definition at line 154 of file MeshPartialVariableArrayRef.h.

◆ ReturnReferenceType

template<typename ItemTypeT, typename DataTypeT>
typedef ArrayView<DataType> Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::ReturnReferenceType

Definition at line 157 of file MeshPartialVariableArrayRef.h.

◆ ThatClass

template<typename ItemTypeT, typename DataTypeT>
typedef MeshPartialVariableArrayRefT<ItemType, DataType> Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::ThatClass

Definition at line 166 of file MeshPartialVariableArrayRef.h.

◆ ValueType

template<typename ItemTypeT, typename DataTypeT>
typedef UniqueArray2<DataType> Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::ValueType

Definition at line 155 of file MeshPartialVariableArrayRef.h.

Constructor & Destructor Documentation

◆ MeshPartialVariableArrayRefT() [1/2]

template<class ItemType, class DataType>
Arcane::MeshPartialVariableArrayRefT< ItemType, DataType >::MeshPartialVariableArrayRefT ( const VariableBuildInfo & vb)

Constructs a reference to the variable specified in vb.

Definition at line 179 of file MeshPartialVariableArrayRef.inst.h.

References Arcane::ItemPartialVariableArrayRefT< DataTypeT >::ItemPartialVariableArrayRefT().

Referenced by MeshPartialVariableArrayRefT(), and refersTo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MeshPartialVariableArrayRefT() [2/2]

template<class ItemType, class DataType>
Arcane::MeshPartialVariableArrayRefT< ItemType, DataType >::MeshPartialVariableArrayRefT ( const MeshPartialVariableArrayRefT< ItemType, DataType > & rhs)

Constructs a reference from rhs.

Definition at line 193 of file MeshPartialVariableArrayRef.inst.h.

References Arcane::ItemPartialVariableArrayRefT< DataTypeT >::ItemPartialVariableArrayRefT(), and MeshPartialVariableArrayRefT().

Here is the call graph for this function:

Member Function Documentation

◆ _autoCreate()

template<class ItemType, class DataType>
VariableRef * Arcane::MeshPartialVariableArrayRefT< ItemType, DataType >::_autoCreate ( const VariableBuildInfo & vb)
staticprivate

Definition at line 169 of file MeshPartialVariableArrayRef.inst.h.

◆ _buildVariableInfo()

template<typename ItemType, typename DataType>
VariableInfo Arcane::MeshPartialVariableArrayRefT< ItemType, DataType >::_buildVariableInfo ( const VariableBuildInfo & vbi)
staticprivate

Definition at line 158 of file MeshPartialVariableArrayRef.inst.h.

◆ _buildVariableTypeInfo()

template<typename ItemType, typename DataType>
VariableTypeInfo Arcane::MeshPartialVariableArrayRefT< ItemType, DataType >::_buildVariableTypeInfo ( )
staticprivate

Definition at line 147 of file MeshPartialVariableArrayRef.inst.h.

◆ itemGroup()

template<class ItemType, class DataType>
Arcane::MeshPartialVariableArrayRefT< ItemType, DataType >::GroupType Arcane::MeshPartialVariableArrayRefT< ItemType, DataType >::itemGroup ( ) const

Group associated with the quantity.

Definition at line 218 of file MeshPartialVariableArrayRef.inst.h.

◆ operator[]() [1/10]

template<typename ItemTypeT, typename DataTypeT>
ArrayType Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::operator[] ( const ItemEnumeratorT< ItemType > & i)
inline

Definition at line 215 of file MeshPartialVariableArrayRef.h.

◆ operator[]() [2/10]

template<typename ItemTypeT, typename DataTypeT>
ConstArrayType Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::operator[] ( const ItemEnumeratorT< ItemType > & i) const
inline

Definition at line 210 of file MeshPartialVariableArrayRef.h.

◆ operator[]() [3/10]

template<typename ItemTypeT, typename DataTypeT>
ArrayType Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::operator[] ( const ItemGroupRangeIteratorT< ItemType > & i)
inline

Definition at line 198 of file MeshPartialVariableArrayRef.h.

◆ operator[]() [4/10]

template<typename ItemTypeT, typename DataTypeT>
ConstArrayType Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::operator[] ( const ItemGroupRangeIteratorT< ItemType > & i) const
inline

Definition at line 194 of file MeshPartialVariableArrayRef.h.

◆ operator[]() [5/10]

template<typename ItemTypeT, typename DataTypeT>
ArrayType Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::operator[] ( const ItemLocalIdType & i)
inline

Definition at line 188 of file MeshPartialVariableArrayRef.h.

◆ operator[]() [6/10]

template<typename ItemTypeT, typename DataTypeT>
ConstArrayType Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::operator[] ( const ItemLocalIdType & i) const
inline

Definition at line 182 of file MeshPartialVariableArrayRef.h.

◆ operator[]() [7/10]

template<typename ItemTypeT, typename DataTypeT>
ArrayType Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::operator[] ( const ItemPairEnumeratorSubT< ItemType > & i)
inline

Definition at line 206 of file MeshPartialVariableArrayRef.h.

◆ operator[]() [8/10]

template<typename ItemTypeT, typename DataTypeT>
ConstArrayType Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::operator[] ( const ItemPairEnumeratorSubT< ItemType > & i) const
inline

Definition at line 202 of file MeshPartialVariableArrayRef.h.

◆ operator[]() [9/10]

template<typename ItemTypeT, typename DataTypeT>
ArrayType Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::operator[] ( ItemEnumeratorIndexT< ItemType > i)
inline

Definition at line 224 of file MeshPartialVariableArrayRef.h.

◆ operator[]() [10/10]

template<typename ItemTypeT, typename DataTypeT>
ConstArrayType Arcane::MeshPartialVariableArrayRefT< ItemTypeT, DataTypeT >::operator[] ( ItemEnumeratorIndexT< ItemType > i) const
inline

Definition at line 220 of file MeshPartialVariableArrayRef.h.

◆ refersTo()

template<class ItemType, class DataType>
void Arcane::MeshPartialVariableArrayRefT< ItemType, DataType >::refersTo ( const MeshPartialVariableArrayRefT< ItemType, DataType > & rhs)

Positions the instance reference to the variable rhs.

Definition at line 207 of file MeshPartialVariableArrayRef.inst.h.

References MeshPartialVariableArrayRefT(), and Arcane::ItemPartialVariableArrayRefT< DataTypeT >::operator=().

Here is the call graph for this function:

Member Data Documentation

◆ m_auto_registerer

template<class ItemType, class DataType>
VariableFactoryRegisterer Arcane::MeshPartialVariableArrayRefT< ItemType, DataType >::m_auto_registerer
staticprivate

Definition at line 234 of file MeshPartialVariableArrayRef.h.


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