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

Container pour la classe NumArray. Plus de détails...

#include <arcane/utils/NumArrayContainer.h>

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

Fonctions membres publiques

 NumArrayContainer (eMemoryRessource r)
 
 NumArrayContainer (const ThatClass &rhs)
 
 NumArrayContainer (ThatClass &&rhs)
 
ThatClassoperator= (const ThatClass &rhs)=delete
 
ThatClassoperator= (ThatClass &&rhs)
 
void resize (Int64 new_size)
 
Span< DataType > to1DSpan ()
 
Span< const DataType > to1DSpan () const
 
Span< std::byte > bytes ()
 
Span< const std::byte > bytes () const
 
void swap (NumArrayContainer< DataType > &rhs)
 
void copy (Span< const DataType > rhs)
 
IMemoryAllocatorallocator () const
 
eMemoryRessource memoryRessource () const
 
void copyInitializerList (std::initializer_list< DataType > alist)
 
void copyOnly (const Span< const DataType > &v, eMemoryRessource input_ressource, RunQueue *queue=nullptr)
 Copie les valeurs de v dans l'instance.
 
void fill (const DataType &v, SmallSpan< const Int32 > indexes, RunQueue *queue)
 Remplit les indices données par indexes avec la valeur v.
 
void fill (const DataType &v, RunQueue *queue)
 Remplit les éléments de l'instance la valeur v.
 

Types privés

using BaseClass = Arccore::Array< DataType >
 
using ThatClass = NumArrayContainer< DataType >
 
- Types privés hérités de Arccore::Array< DataType >
typedef AbstractArray< DataType > BaseClassType
 
typedef ArrayTraits< DataType >::ConstReferenceType ConstReferenceType
 
typedef DataType value_type
 Type des éléments du tableau.
 
typedef ArrayIterator< pointeriterator
 Type de l'itérateur sur un élément du tableau.
 
typedef ArrayIterator< const_pointerconst_iterator
 Type de l'itérateur constant sur un élément du tableau.
 
typedef std::reverse_iterator< iteratorreverse_iterator
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 
typedef value_typepointer
 Type pointeur d'un élément du tableau.
 
typedef const value_typeconst_pointer
 Type pointeur constant d'un élément du tableau.
 
typedef value_typereference
 Type référence d'un élément du tableau.
 
typedef ConstReferenceType const_reference
 Type référence constante d'un élément du tableau.
 
typedef Int64 size_type
 Type indexant le tableau.
 
typedef ptrdiff_t difference_type
 Type d'une distance entre itérateur éléments du tableau.
 
- Types privés hérités de Arccore::AbstractArray< T >
typedef ArrayTraits< T >::ConstReferenceType ConstReferenceType
 
typedef ArrayTraits< T >::IsPODType IsPODType
 
typedef AbstractArray< T > ThatClassType
 
using TrueImpl = T
 
typedef T value_type
 Type des éléments du tableau.
 
typedef value_typepointer
 Type pointeur d'un élément du tableau.
 
typedef const value_typeconst_pointer
 Type pointeur constant d'un élément du tableau.
 
typedef ArrayIterator< pointeriterator
 Type de l'itérateur sur un élément du tableau.
 
typedef ArrayIterator< const_pointerconst_iterator
 Type de l'itérateur constant sur un élément du tableau.
 
typedef value_typereference
 Type référence d'un élément du tableau.
 
typedef ConstReferenceType const_reference
 Type référence constante d'un élément du tableau.
 
typedef Int64 size_type
 Type indexant le tableau.
 
typedef ptrdiff_t difference_type
 Type d'une distance entre itérateur éléments du tableau.
 
typedef std::reverse_iterator< iteratorreverse_iterator
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 

Fonctions membres privées

 NumArrayContainer (const MemoryAllocationOptions &a)
 
void _memoryAwareCopy (const Span< const DataType > &v, eMemoryRessource input_ressource, RunQueue *queue)
 
void _resizeAndCopy (const ThatClass &v)
 
- Fonctions membres privées hérités de Arccore::Array< DataType >
 operator ConstArrayView< DataType > () const
 
 operator ArrayView< DataType > ()
 
 operator Span< const DataType > () const
 
 operator Span< DataType > ()
 
ConstArrayView< DataType > constView () const
 Vue constante sur ce tableau.
 
Span< const DataType > constSpan () const
 Vue constante sur ce tableau.
 
ConstArrayView< DataType > subConstView (Int64 abegin, Int32 asize) const
 Sous-vue à partir de l'élément abegin et contenant asize éléments.
 
ArrayView< DataType > view () const
 Vue mutable sur ce tableau.
 
Span< const DataType > span () const
 Vue immutable sur ce tableau.
 
Span< DataType > span ()
 Vue mutable sur ce tableau.
 
SmallSpan< const DataType > smallSpan () const
 Vue immutable sur ce tableau.
 
SmallSpan< DataType > smallSpan ()
 Vue mutable sur ce tableau.
 
SmallSpan< const DataType > constSmallSpan () const
 Vue immutable sur ce tableau.
 
ArrayView< DataType > subView (Int64 abegin, Integer asize)
 Sous-vue à partir de l'élément abegin et contenant asize éléments.
 
void sample (ConstArrayView< Integer > indexes, ArrayView< DataType > result) const
 Extrait un sous-tableau à à partir d'une liste d'index.
 
void add (ConstReferenceType val)
 Ajoute l'élément val à la fin du tableau.
 
void addRange (ConstReferenceType val, Int64 n)
 Ajoute n élément de valeur val à la fin du tableau.
 
void addRange (ConstArrayView< DataType > val)
 Ajoute n élément de valeur val à la fin du tableau.
 
void addRange (Span< const DataType > val)
 Ajoute n élément de valeur val à la fin du tableau.
 
void addRange (ArrayView< DataType > val)
 Ajoute n élément de valeur val à la fin du tableau.
 
void addRange (Span< DataType > val)
 Ajoute n élément de valeur val à la fin du tableau.
 
void addRange (const Array< DataType > &val)
 Ajoute n élément de valeur val à la fin du tableau.
 
void resize (Int64 s)
 Change le nombre d'éléments du tableau à s.
 
void resize (Int64 s, ConstReferenceType fill_value)
 Change le nombre d'éléments du tableau à s.
 
void resizeNoInit (Int64 s)
 Redimensionne sans initialiser les nouvelles valeurs.
 
void reserve (Int64 new_capacity)
 Réserve le mémoire pour new_capacity éléments.
 
void shrink ()
 Réalloue pour libérer la mémoire non utilisée.
 
void shrink (Int64 new_capacity)
 Réalloue la mémoire avoir une capacité proche de new_capacity.
 
void shrink_to_fit ()
 Réalloue pour libérer la mémoire non utilisée.
 
void remove (Int64 index)
 Supprime l'entité ayant l'indice index.
 
void popBack ()
 Supprime la dernière entité du tableau.
 
ConstReferenceType at (Int64 i) const
 Elément d'indice i. Vérifie toujours les débordements.
 
void setAt (Int64 i, ConstReferenceType value)
 Positionne l'élément d'indice i. Vérifie toujours les débordements.
 
ConstReferenceType item (Int64 i) const
 Elément d'indice i.
 
void setItem (Int64 i, ConstReferenceType v)
 Elément d'indice i.
 
ConstReferenceType operator[] (Int64 i) const
 Elément d'indice i.
 
DataType & operator[] (Int64 i)
 Elément d'indice i.
 
ConstReferenceType operator() (Int64 i) const
 
DataType & operator() (Int64 i)
 Elément d'indice i.
 
DataType & back ()
 Dernier élément du tableau.
 
ConstReferenceType back () const
 Dernier élément du tableau (const)
 
DataType & front ()
 Premier élément du tableau.
 
ConstReferenceType front () const
 Premier élément du tableau (const)
 
void clear ()
 Supprime les éléments du tableau.
 
void fill (ConstReferenceType value)
 Remplit le tableau avec la valeur value.
 
void copy (Span< const DataType > rhs)
 Copie les valeurs de rhs dans l'instance.
 
Array< DataType > clone () const
 Clone le tableau.
 
const DataType * unguardedBasePointer () const
 
DataType * unguardedBasePointer ()
 
const DataType * data () const
 Accès à la racine du tableau hors toute protection.
 
DataType * data ()
 
iterator begin ()
 Itérateur sur le premier élément du tableau.
 
const_iterator begin () const
 Itérateur constant sur le premier élément du tableau.
 
iterator end ()
 Itérateur sur le premier élément après la fin du tableau.
 
const_iterator end () const
 Itérateur constant sur le premier élément après la fin du tableau.
 
reverse_iterator rbegin ()
 Itérateur inverse sur le premier élément du tableau.
 
const_reverse_iterator rbegin () const
 Itérateur inverse sur le premier élément du tableau.
 
reverse_iterator rend ()
 Itérateur inverse sur le premier élément après la fin du tableau.
 
const_reverse_iterator rend () const
 Itérateur inverse sur le premier élément après la fin du tableau.
 
 ARCCORE_DEPRECATED_REASON ("Y2023: Use begin()/end() instead") ArrayRange< pointer > range()
 Intervalle d'itération du premier au dernièr élément.
 
 ARCCORE_DEPRECATED_REASON ("Y2023: Use begin()/end() instead") ArrayRange< const_pointer > range() const
 Intervalle d'itération du premier au dernièr élément.
 
void push_back (ConstReferenceType val)
 Ajoute l'élément val à la fin du tableau.
 
 Array (Array< DataType > &&rhs) ARCCORE_NOEXCEPT
 Constructeur par déplacement (uniquement pour UniqueArray)
 
void _initFromInitializerList (std::initializer_list< DataType > alist)
 
- Fonctions membres privées hérités de Arccore::AbstractArray< T >
 AbstractArray (const AbstractArray< T > &rhs)=delete
 
AbstractArray< T > & operator= (const AbstractArray< T > &rhs)=delete
 
void dispose ()
 Libère la mémoire utilisée par le tableau.
 
 operator ConstArrayView< T > () const
 
 operator Span< const T > () const
 
 operator SmallSpan< const T > () const
 
Integer size () const
 Nombre d'éléments du vecteur.
 
Integer length () const
 Nombre d'éléments du vecteur.
 
Integer capacity () const
 Capacité (nombre d'éléments alloués) du vecteur.
 
Int64 largeSize () const
 Nombre d'éléments du vecteur (en 64 bits)
 
Int64 largeLength () const
 Nombre d'éléments du vecteur (en 64 bits)
 
Int64 largeCapacity () const
 Capacité (nombre d'éléments alloués) du vecteur (en 64 bits)
 
bool empty () const
 Capacité (nombre d'éléments alloués) du vecteur.
 
bool contains (ConstReferenceType v) const
 Vrai si le tableau contient l'élément de valeur v.
 
ConstReferenceType operator[] (Int64 i) const
 Elément d'indice i.
 
ConstReferenceType operator() (Int64 i) const
 Elément d'indice i.
 
void setMemoryLocationHint (eMemoryLocationHint new_hint)
 Modifie les informations sur la localisation mémoire.
 
void printInfos (std::ostream &o)
 
 AbstractArray ()
 Construit un vecteur vide avec l'allocateur par défaut.
 
 AbstractArray (ThatClassType &&rhs) ARCCORE_NOEXCEPT
 Constructeur par déplacement. Ne doit être utilisé que par UniqueArray.
 
AllocatedMemoryInfo _currentMemoryInfo () const
 
void _initFromSpan (const Span< const T > &view)
 Initialise le tableau avec la vue view.
 
void _initFromAllocator (IMemoryAllocator *a, Int64 acapacity)
 Construit un tableau avec un allocateur spécifique a.
 
void _initFromAllocator (MemoryAllocationOptions o, Int64 acapacity)
 Construit un vecteur vide avec un allocateur spécifique a.
 
void _reserve (Int64 new_capacity)
 Réserve le mémoire pour new_capacity éléments.
 
template<typename PodType >
void _internalRealloc (Int64 new_capacity, bool compute_capacity, PodType pod_type, RunQueue *queue=nullptr)
 Réalloue le tableau pour une nouvelle capacité égale à new_capacity.
 
void _internalRealloc (Int64 new_capacity, bool compute_capacity)
 
void _internalReallocate (Int64 new_capacity, TrueType, RunQueue *queue)
 Réallocation pour un type POD.
 
void _internalReallocate (Int64 new_capacity, FalseType, RunQueue *queue)
 Réallocation pour un type complexe (non POD)
 
void _internalDeallocate (RunQueue *queue=nullptr)
 
void _internalAllocate (Int64 new_capacity, RunQueue *queue)
 
void _copyFromMemory (const T *source)
 
virtual void _updateReferences ()
 Mise à jour des références.
 
virtual Integer _getNbRef ()
 Mise à jour des références.
 
void _addRange (ConstReferenceType val, Int64 n)
 Ajoute n élément de valeur val à la fin du tableau.
 
void _addRange (Span< const T > val)
 Ajoute n élément de valeur val à la fin du tableau.
 
void _checkFreeMemory ()
 Détruit l'instance si plus personne ne la référence.
 
void _destroy ()
 
void _destroyRange (Int64, Int64, TrueType)
 
void _destroyRange (Int64 abegin, Int64 aend, FalseType)
 
void _createRangeDefault (Int64, Int64, TrueType)
 
void _createRangeDefault (Int64 abegin, Int64 aend, FalseType)
 
void _createRange (Int64 abegin, Int64 aend, ConstReferenceType value, TrueType)
 
void _createRange (Int64 abegin, Int64 aend, ConstReferenceType value, FalseType)
 
void _createRange (Int64 abegin, Int64 aend, const T *values)
 
void _fill (ConstReferenceType value)
 
void _clone (const ThatClassType &orig_array)
 
template<typename PodType >
void _resizeHelper (Int64 s, PodType pod_type, RunQueue *queue)
 
void _resize (Int64 s)
 
void _resizeNoInit (Int64 s, RunQueue *queue=nullptr)
 Redimensionne sans initialiser les nouvelles valeurs.
 
void _clear ()
 
void _resize (Int64 s, ConstReferenceType value)
 Redimensionne et remplit les nouvelles valeurs avec value.
 
void _copy (const T *rhs_begin, TrueType)
 
void _copy (const T *rhs_begin, FalseType)
 
void _copy (const T *rhs_begin)
 
void _resizeAndCopyView (Span< const T > rhs)
 Redimensionne l'instance et recopie les valeurs de rhs.
 
void _move (ThatClassType &rhs) ARCCORE_NOEXCEPT
 Implémente l'opérateur d'assignement par déplacement.
 
void _swap (ThatClassType &rhs) ARCCORE_NOEXCEPT
 Échange les valeurs de l'instance avec celles de rhs.
 
void _shrink ()
 
void _shrink (Int64 new_capacity)
 
void _reset ()
 Réinitialise le tableau à un tableau vide.
 
constexpr Integer _clampSizeOffet (Int64 offset, Int32 asize) const
 
void _assignFromArray (const AbstractArray< T > &rhs)
 
void _setMP (TrueImpl *new_mp)
 
void _setMP2 (TrueImpl *new_mp, ArrayMetaData *new_md)
 
bool _isSharedNull ()
 
- Fonctions membres privées hérités de Arccore::AbstractArrayBase
IMemoryAllocatorallocator () const
 
MemoryAllocationOptions allocationOptions () const
 
void setDebugName (const String &name)
 Positionne le nom du tableau pour les informations de debug.
 
String debugName () const
 Nom de debug (nul si aucun nom spécifié)
 
virtual bool _isUseOwnMetaData () const
 Indique si m_md fait référence à m_meta_data.
 
void _swapMetaData (AbstractArrayBase &rhs)
 
void _copyMetaData (const AbstractArrayBase &rhs)
 
void _allocateMetaData ()
 
void _deallocateMetaData (ArrayMetaData *md)
 
void _checkValidSharedArray ()
 

Fonctions membres privées statiques

static constexpr Int32 _typeSize ()
 
- Fonctions membres privées statiques hérités de Arccore::AbstractArray< T >
static constexpr Int64 typeSize ()
 
- Fonctions membres privées statiques hérités de Arccore::AbstractArrayBase
static constexpr RunQueue_nullRunQueue ()
 Méthode explicite pour une RunQueue nulle.
 
- Fonctions membres privées statiques hérités de Arcane::impl::NumArrayBaseCommon
static MemoryAllocationOptions _getDefaultAllocator ()
 
static MemoryAllocationOptions _getDefaultAllocator (eMemoryRessource r)
 
static void _checkHost (eMemoryRessource r)
 
static void _memoryAwareCopy (Span< const std::byte > from, eMemoryRessource from_mem, Span< std::byte > to, eMemoryRessource to_mem, RunQueue *queue)
 
static void _memoryAwareFill (Span< std::byte > to, Int64 nb_element, const void *fill_address, Int32 datatype_size, SmallSpan< const Int32 > indexes, RunQueue *queue)
 
static void _memoryAwareFill (Span< std::byte > to, Int64 nb_element, const void *fill_address, Int32 datatype_size, RunQueue *queue)
 

Attributs privés

eMemoryRessource m_memory_ressource = eMemoryRessource::UnifiedMemory
 
- Attributs privés hérités de Arccore::AbstractArray< T >
T * m_ptr = nullptr
 
- Attributs privés hérités de Arccore::AbstractArrayBase
ArrayMetaDatam_md = nullptr
 
ArrayMetaData m_meta_data
 

Description détaillée

template<typename DataType>
class Arcane::impl::NumArrayContainer< DataType >

Container pour la classe NumArray.

Wrapper de Arccore::Array pour la classe NumArray.

Définition à la ligne 57 du fichier NumArrayContainer.h.

Documentation des définitions de type membres

◆ BaseClass

template<typename DataType >
using Arcane::impl::NumArrayContainer< DataType >::BaseClass = Arccore::Array<DataType>
private

Définition à la ligne 63 du fichier NumArrayContainer.h.

◆ ThatClass

template<typename DataType >
using Arcane::impl::NumArrayContainer< DataType >::ThatClass = NumArrayContainer<DataType>
private

Définition à la ligne 64 du fichier NumArrayContainer.h.

Documentation des constructeurs et destructeur

◆ NumArrayContainer() [1/5]

template<typename DataType >
Arcane::impl::NumArrayContainer< DataType >::NumArrayContainer ( const MemoryAllocationOptions a)
inlineexplicitprivate

Définition à la ligne 76 du fichier NumArrayContainer.h.

◆ NumArrayContainer() [2/5]

template<typename DataType >
Arcane::impl::NumArrayContainer< DataType >::NumArrayContainer ( )
inlineexplicit

Définition à la ligne 84 du fichier NumArrayContainer.h.

◆ NumArrayContainer() [3/5]

template<typename DataType >
Arcane::impl::NumArrayContainer< DataType >::NumArrayContainer ( eMemoryRessource  r)
inlineexplicit

Définition à la ligne 89 du fichier NumArrayContainer.h.

◆ NumArrayContainer() [4/5]

template<typename DataType >
Arcane::impl::NumArrayContainer< DataType >::NumArrayContainer ( const ThatClass rhs)
inline

Définition à la ligne 95 du fichier NumArrayContainer.h.

◆ NumArrayContainer() [5/5]

template<typename DataType >
Arcane::impl::NumArrayContainer< DataType >::NumArrayContainer ( ThatClass &&  rhs)
inline

Définition à la ligne 102 du fichier NumArrayContainer.h.

Documentation des fonctions membres

◆ _memoryAwareCopy()

template<typename DataType >
void Arcane::impl::NumArrayContainer< DataType >::_memoryAwareCopy ( const Span< const DataType > &  v,
eMemoryRessource  input_ressource,
RunQueue queue 
)
inlineprivate

Définition à la ligne 176 du fichier NumArrayContainer.h.

◆ _resizeAndCopy()

template<typename DataType >
void Arcane::impl::NumArrayContainer< DataType >::_resizeAndCopy ( const ThatClass v)
inlineprivate

Définition à la ligne 181 du fichier NumArrayContainer.h.

◆ _typeSize()

template<typename DataType >
static constexpr Int32 Arcane::impl::NumArrayContainer< DataType >::_typeSize ( )
inlinestaticconstexprprivate

Définition à la ligne 65 du fichier NumArrayContainer.h.

◆ allocator()

template<typename DataType >
IMemoryAllocator * Arcane::impl::NumArrayContainer< DataType >::allocator ( ) const
inline

Définition à la ligne 132 du fichier NumArrayContainer.h.

◆ bytes() [1/2]

template<typename DataType >
Span< std::byte > Arcane::impl::NumArrayContainer< DataType >::bytes ( )
inline

Définition à la ligne 124 du fichier NumArrayContainer.h.

◆ bytes() [2/2]

template<typename DataType >
Span< const std::byte > Arcane::impl::NumArrayContainer< DataType >::bytes ( ) const
inline

Définition à la ligne 125 du fichier NumArrayContainer.h.

◆ copy()

template<typename DataType >
void Arcane::impl::NumArrayContainer< DataType >::copy ( Span< const DataType >  rhs)
inline

Définition à la ligne 131 du fichier NumArrayContainer.h.

◆ copyInitializerList()

template<typename DataType >
void Arcane::impl::NumArrayContainer< DataType >::copyInitializerList ( std::initializer_list< DataType >  alist)
inline

Définition à la ligne 134 du fichier NumArrayContainer.h.

◆ copyOnly()

template<typename DataType >
void Arcane::impl::NumArrayContainer< DataType >::copyOnly ( const Span< const DataType > &  v,
eMemoryRessource  input_ressource,
RunQueue queue = nullptr 
)
inline

Copie les valeurs de v dans l'instance.

input_ressource indique l'origine de la zone mémoire (ou eMemoryRessource::Unknown si inconnu)

Définition à la ligne 153 du fichier NumArrayContainer.h.

◆ fill() [1/2]

template<typename DataType >
void Arcane::impl::NumArrayContainer< DataType >::fill ( const DataType &  v,
RunQueue queue 
)
inline

Remplit les éléments de l'instance la valeur v.

Définition à la ligne 168 du fichier NumArrayContainer.h.

◆ fill() [2/2]

template<typename DataType >
void Arcane::impl::NumArrayContainer< DataType >::fill ( const DataType &  v,
SmallSpan< const Int32 >  indexes,
RunQueue queue 
)
inline

◆ memoryRessource()

template<typename DataType >
eMemoryRessource Arcane::impl::NumArrayContainer< DataType >::memoryRessource ( ) const
inline

Définition à la ligne 133 du fichier NumArrayContainer.h.

◆ operator=()

template<typename DataType >
ThatClass & Arcane::impl::NumArrayContainer< DataType >::operator= ( ThatClass &&  rhs)
inline

Définition à la ligne 112 du fichier NumArrayContainer.h.

◆ resize()

template<typename DataType >
void Arcane::impl::NumArrayContainer< DataType >::resize ( Int64  new_size)
inline

Définition à la ligne 121 du fichier NumArrayContainer.h.

◆ swap()

template<typename DataType >
void Arcane::impl::NumArrayContainer< DataType >::swap ( NumArrayContainer< DataType > &  rhs)
inline

Définition à la ligne 126 du fichier NumArrayContainer.h.

◆ to1DSpan() [1/2]

template<typename DataType >
Span< DataType > Arcane::impl::NumArrayContainer< DataType >::to1DSpan ( )
inline

Définition à la ligne 122 du fichier NumArrayContainer.h.

◆ to1DSpan() [2/2]

template<typename DataType >
Span< const DataType > Arcane::impl::NumArrayContainer< DataType >::to1DSpan ( ) const
inline

Définition à la ligne 123 du fichier NumArrayContainer.h.

Documentation des données membres

◆ m_memory_ressource

template<typename DataType >
eMemoryRessource Arcane::impl::NumArrayContainer< DataType >::m_memory_ressource = eMemoryRessource::UnifiedMemory
private

Définition à la ligne 189 du fichier NumArrayContainer.h.


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