Arcane  v3.14.10.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence du modèle de la classe Arcane::DualUniqueArray< DataType >

Représente un tableau ayant une vue à la fois sur CPU et accélérateur. Plus de détails...

#include <arcane/utils/DualUniqueArray.h>

+ Graphe d'héritage de Arcane::DualUniqueArray< DataType >:
+ Graphe de collaboration de Arcane::DualUniqueArray< DataType >:

Classes

class  HostModifier
 
class  IModifierImpl
 
class  Modifier
 
class  NumArrayModifierImpl
 
class  UniqueArrayModifierImpl
 

Fonctions membres publiques

 DualUniqueArray (IMemoryAllocator *a)
 
SmallSpan< const DataType > hostSmallSpan () const
 
ConstArrayView< DataType > hostView () const
 
void reserve (Int64 capacity)
 
void resizeHost (Int32 new_size)
 
void fillHost (const DataType &value)
 
void resizeDevice (Int32 new_size)
 
void clearHost ()
 
Int64 size () const
 
SmallSpan< const DataType > view (bool is_device)
 
void sync (bool is_device)
 
void endUpdateHost ()
 
void endUpdate (bool is_device)
 
Modifier modifier (bool is_device)
 
HostModifier hostModifier ()
 

Types privés

using NumArrayType = NumArray< DataType, MDDim1 >
 
using ThatClass = DualUniqueArray< DataType >
 

Fonctions membres privées

void _checkUpdateDeviceView ()
 
void _checkUpdateHostView ()
 
void _checkCreateNumArray ()
 

Attributs privés

UniqueArray< DataType > m_array
 
std::unique_ptr< NumArrayTypem_device_array
 
SmallSpan< DataType > m_device_view
 
NumArrayModifierImpl m_numarray_modifier
 
UniqueArrayModifierImpl m_array_modifier
 
bool m_is_valid_array = true
 
bool m_is_valid_numarray = false
 

Membres hérités additionnels

- Fonctions membres protégées statiques hérités de Arcane::DualUniqueArrayBase
static void _memoryCopy (Span< const std::byte > from, Span< std::byte > to)
 

Description détaillée

template<typename DataType>
class Arcane::DualUniqueArray< DataType >

Représente un tableau ayant une vue à la fois sur CPU et accélérateur.

Avertissement
API en cours de définition. Ne pas utiliser en dehors de Arcane.

Définition à la ligne 48 du fichier DualUniqueArray.h.

Documentation des définitions de type membres

◆ NumArrayType

template<typename DataType >
using Arcane::DualUniqueArray< DataType >::NumArrayType = NumArray<DataType, MDDim1>
private

Définition à la ligne 51 du fichier DualUniqueArray.h.

◆ ThatClass

template<typename DataType >
using Arcane::DualUniqueArray< DataType >::ThatClass = DualUniqueArray<DataType>
private

Définition à la ligne 52 du fichier DualUniqueArray.h.

Documentation des constructeurs et destructeur

◆ DualUniqueArray() [1/2]

template<typename DataType >
Arcane::DualUniqueArray< DataType >::DualUniqueArray ( )
inline

Définition à la ligne 180 du fichier DualUniqueArray.h.

◆ DualUniqueArray() [2/2]

template<typename DataType >
Arcane::DualUniqueArray< DataType >::DualUniqueArray ( IMemoryAllocator a)
inlineexplicit

Définition à la ligne 185 du fichier DualUniqueArray.h.

Documentation des fonctions membres

◆ _checkCreateNumArray()

template<typename DataType >
void Arcane::DualUniqueArray< DataType >::_checkCreateNumArray ( )
inlineprivate

Définition à la ligne 297 du fichier DualUniqueArray.h.

◆ _checkUpdateDeviceView()

template<typename DataType >
void Arcane::DualUniqueArray< DataType >::_checkUpdateDeviceView ( )
inlineprivate

Définition à la ligne 277 du fichier DualUniqueArray.h.

◆ _checkUpdateHostView()

template<typename DataType >
void Arcane::DualUniqueArray< DataType >::_checkUpdateHostView ( )
inlineprivate

Définition à la ligne 287 du fichier DualUniqueArray.h.

◆ clearHost()

template<typename DataType >
void Arcane::DualUniqueArray< DataType >::clearHost ( )
inline

Définition à la ligne 216 du fichier DualUniqueArray.h.

◆ endUpdate()

template<typename DataType >
void Arcane::DualUniqueArray< DataType >::endUpdate ( bool  is_device)
inline

Définition à la ligne 247 du fichier DualUniqueArray.h.

◆ endUpdateHost()

template<typename DataType >
void Arcane::DualUniqueArray< DataType >::endUpdateHost ( )
inline

Définition à la ligne 242 du fichier DualUniqueArray.h.

◆ fillHost()

template<typename DataType >
void Arcane::DualUniqueArray< DataType >::fillHost ( const DataType &  value)
inline

Définition à la ligne 205 du fichier DualUniqueArray.h.

◆ hostModifier()

template<typename DataType >
HostModifier Arcane::DualUniqueArray< DataType >::hostModifier ( )
inline

Définition à la ligne 260 du fichier DualUniqueArray.h.

◆ hostSmallSpan()

template<typename DataType >
SmallSpan< const DataType > Arcane::DualUniqueArray< DataType >::hostSmallSpan ( ) const
inline

Définition à la ligne 193 du fichier DualUniqueArray.h.

◆ hostView()

template<typename DataType >
ConstArrayView< DataType > Arcane::DualUniqueArray< DataType >::hostView ( ) const
inline

Définition à la ligne 194 du fichier DualUniqueArray.h.

◆ modifier()

template<typename DataType >
Modifier Arcane::DualUniqueArray< DataType >::modifier ( bool  is_device)
inline

Définition à la ligne 252 du fichier DualUniqueArray.h.

◆ reserve()

template<typename DataType >
void Arcane::DualUniqueArray< DataType >::reserve ( Int64  capacity)
inline

Définition à la ligne 196 du fichier DualUniqueArray.h.

◆ resizeDevice()

template<typename DataType >
void Arcane::DualUniqueArray< DataType >::resizeDevice ( Int32  new_size)
inline

Définition à la ligne 210 du fichier DualUniqueArray.h.

◆ resizeHost()

template<typename DataType >
void Arcane::DualUniqueArray< DataType >::resizeHost ( Int32  new_size)
inline

Définition à la ligne 200 du fichier DualUniqueArray.h.

◆ size()

template<typename DataType >
Int64 Arcane::DualUniqueArray< DataType >::size ( ) const
inline

Définition à la ligne 221 du fichier DualUniqueArray.h.

◆ sync()

template<typename DataType >
void Arcane::DualUniqueArray< DataType >::sync ( bool  is_device)
inline

Définition à la ligne 233 du fichier DualUniqueArray.h.

◆ view()

template<typename DataType >
SmallSpan< const DataType > Arcane::DualUniqueArray< DataType >::view ( bool  is_device)
inline

Définition à la ligne 222 du fichier DualUniqueArray.h.

Documentation des données membres

◆ m_array

template<typename DataType >
UniqueArray<DataType> Arcane::DualUniqueArray< DataType >::m_array
private

Définition à la ligne 267 du fichier DualUniqueArray.h.

◆ m_array_modifier

template<typename DataType >
UniqueArrayModifierImpl Arcane::DualUniqueArray< DataType >::m_array_modifier
private

Définition à la ligne 271 du fichier DualUniqueArray.h.

◆ m_device_array

template<typename DataType >
std::unique_ptr<NumArrayType> Arcane::DualUniqueArray< DataType >::m_device_array
private

Définition à la ligne 268 du fichier DualUniqueArray.h.

◆ m_device_view

template<typename DataType >
SmallSpan<DataType> Arcane::DualUniqueArray< DataType >::m_device_view
private

Définition à la ligne 269 du fichier DualUniqueArray.h.

◆ m_is_valid_array

template<typename DataType >
bool Arcane::DualUniqueArray< DataType >::m_is_valid_array = true
private

Définition à la ligne 272 du fichier DualUniqueArray.h.

◆ m_is_valid_numarray

template<typename DataType >
bool Arcane::DualUniqueArray< DataType >::m_is_valid_numarray = false
private

Définition à la ligne 273 du fichier DualUniqueArray.h.

◆ m_numarray_modifier

template<typename DataType >
NumArrayModifierImpl Arcane::DualUniqueArray< DataType >::m_numarray_modifier
private

Définition à la ligne 270 du fichier DualUniqueArray.h.


La documentation de cette classe a été générée à partir du fichier suivant :