Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::IVariableInternal Class Referenceabstract

Internal part of Ivariable. More...

#include <arcane/core/internal/IVariableInternal.h>

Inheritance diagram for Arcane::IVariableInternal:
Collaboration diagram for Arcane::IVariableInternal:

Public Member Functions

virtual String computeComparisonHashCollective (IHashAlgorithm *hash_algo, IData *sorted_data)=0
 Calculates the comparison hash for the variable.
virtual void changeAllocator (const MemoryAllocationOptions &alloc_info)=0
 Changes the variable's allocator.
virtual void resize (const VariableResizeArgs &resize_args)=0
 Resizes the variable by adding additional capacity.
virtual VariableComparerResults compareVariable (const VariableComparerArgs &compare_args)=0
 Applies the comparison method specified by compare_args.
virtual IParallelMngreplicaParallelMng () const =0
 Returns the IParallelMng of the mesh replica associated with the variable.

Detailed Description

Internal part of Ivariable.

Definition at line 71 of file IVariableInternal.h.

Member Function Documentation

◆ changeAllocator()

virtual void Arcane::IVariableInternal::changeAllocator ( const MemoryAllocationOptions & alloc_info)
pure virtual

Changes the variable's allocator.

Currently valid only for 1D variables. Does nothing for others.

Warning
For experimental use only.

Implemented in Arcane::VariablePrivate.

◆ compareVariable()

virtual VariableComparerResults Arcane::IVariableInternal::compareVariable ( const VariableComparerArgs & compare_args)
pure virtual

Applies the comparison method specified by compare_args.

Implemented in Arcane::VariablePrivate.

Referenced by Arcane::VariableComparer::apply().

Here is the caller graph for this function:

◆ computeComparisonHashCollective()

virtual String Arcane::IVariableInternal::computeComparisonHashCollective ( IHashAlgorithm * hash_algo,
IData * sorted_data )
pure virtual

Calculates the comparison hash for the variable.

sorted_data must be sorted according to uniqueId() and also by rank of the IParallelMng associated with the variable.

This method is collective, but only the master rank (the one for which IParallelMng::isMasterIO() is true) returns a valid hash. The others return a null string.

It also returns a null string if the data is not numeric (if sorted_data->_commonInternal()->numericData()==nullptr) or if the variable is not associated with a mesh entity.

Implemented in Arcane::VariablePrivate.

Referenced by Arcane::impl::BasicWriter::_computeCompareHash().

Here is the caller graph for this function:

◆ replicaParallelMng()

virtual IParallelMng * Arcane::IVariableInternal::replicaParallelMng ( ) const
pure virtual

Returns the IParallelMng of the mesh replica associated with the variable.

Returns nullptr if there is no replication.

Implemented in Arcane::VariablePrivate.

◆ resize()

virtual void Arcane::IVariableInternal::resize ( const VariableResizeArgs & resize_args)
pure virtual

Resizes the variable by adding additional capacity.

Implemented in Arcane::VariablePrivate.


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