Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::MachineShMemWinMeshVectorMDVariableT< ItemType, DataType, Extents > Class Template Reference

Class allowing access to shared elements of the variable in shared memory. More...

#include <arcane/core/MachineShMemWinVariable.h>

Inheritance diagram for Arcane::MachineShMemWinMeshVectorMDVariableT< ItemType, DataType, Extents >:
Collaboration diagram for Arcane::MachineShMemWinMeshVectorMDVariableT< ItemType, DataType, Extents >:

Public Member Functions

template<Int32 Size>
 MachineShMemWinMeshVectorMDVariableT (MeshVectorMDVariableRefT< ItemType, DataType, Size, Extents > var)
 Constructor.
Public Member Functions inherited from Arcane::MachineShMemWinMDVariableT< ItemType, DataType, Extents::template AddedFirstExtentsType< DynExtent > >
ConstArrayView< Int32machineRanks () const
 Method to get the ranks that possess a segment in the window.
void barrier () const
 Method to wait until all processes/threads on the node call this method to continue execution.
MDSpan< DataType, typename MDDimType< Extents::rank()+1 >::DimType > view (Int32 rank) const
 Method to get a view of the variable from another subdomain on the node.
MDSpan< DataType, Extents > operator() (Int32 rank, Int32 notlocal_id)
 Method to get the multi-dimensional array of an item from another subdomain.
void updateVariable ()
 Method to update this object after a change in the mesh and/or after a resizing of the variable.

Private Types

using AddedFirstExtentsType = Extents::template AddedFirstExtentsType<DynExtent>

Additional Inherited Members

Protected Member Functions inherited from Arcane::MachineShMemWinMDVariableT< ItemType, DataType, Extents::template AddedFirstExtentsType< DynExtent > >
 MachineShMemWinMDVariableT (MeshVariableArrayRefT< ItemType, DataType > var)
 Constructor.

Detailed Description

template<class ItemType, class DataType, class Extents>
class Arcane::MachineShMemWinMeshVectorMDVariableT< ItemType, DataType, Extents >

Class allowing access to shared elements of the variable in shared memory.

It is necessary that this variable be allocated in shared memory with the property "IVariable::PInShMem".

This class works for vector mesh variables with a maximum dimension of 2.

If the mesh and/or the variable size changes when an object of this type is used, it is necessary to call the updateVariable() method.

Definition at line 582 of file MachineShMemWinVariable.h.

Member Typedef Documentation

◆ AddedFirstExtentsType

template<class ItemType, class DataType, class Extents>
using Arcane::MachineShMemWinMeshVectorMDVariableT< ItemType, DataType, Extents >::AddedFirstExtentsType = Extents::template AddedFirstExtentsType<DynExtent>
private

Definition at line 585 of file MachineShMemWinVariable.h.

Constructor & Destructor Documentation

◆ MachineShMemWinMeshVectorMDVariableT()

template<class ItemType, class DataType, class Extents>
template<Int32 Size>
Arcane::MachineShMemWinMeshVectorMDVariableT< ItemType, DataType, Extents >::MachineShMemWinMeshVectorMDVariableT ( MeshVectorMDVariableRefT< ItemType, DataType, Size, Extents > var)
inlineexplicit

Constructor.

Parameters
varVariable having the property "IVariable::PInShMem".

Definition at line 594 of file MachineShMemWinVariable.h.

References Arcane::MachineShMemWinMDVariableT< ItemType, DataType, Extents::template AddedFirstExtentsType< DynExtent > >::MachineShMemWinMDVariableT().

Here is the call graph for this function:

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