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

Vue modifiable d'un tableau d'un type T. Plus de détails...

#include </__w/arcaneframework.github.io/arcaneframework.github.io/framework/arccore/src/base/arccore/base/ArrayView.h>

+ Graphe d'héritage de Arccore::ArrayView< T >:
+ Graphe de collaboration de Arccore::ArrayView< T >:

Types publics

using ThatClass = ArrayView< 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 const value_typeconst_reference
 Type référence constante d'un élément du tableau.
 
typedef Integer size_type
 Type indexant le tableau.
 
typedef std::ptrdiff_t difference_type
 Type d'une distance entre itérateur éléments du tableau.
 
typedef IterT< ArrayView< T > > iter
 Type d'un itérateur sur tout le tableau.
 
typedef ConstIterT< ArrayView< T > > const_iter
 Type d'un itérateur constant sur tout le tableau.
 
typedef std::reverse_iterator< iteratorreverse_iterator
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 

Fonctions membres publiques

constexpr ArrayView () noexcept
 Construit une vue vide.
 
 ArrayView (const ArrayView< T > &from)=default
 Constructeur de recopie depuis une autre vue.
 
constexpr ArrayView (Integer asize, pointer ptr) noexcept
 Construit une vue sur une zone mémoire commencant par ptr et.
 
template<std::size_t N>
constexpr ArrayView (std::array< T, N > &v)
 Construit une vue sur une zone mémoire commencant par ptr et contenant asize éléments.
 
ArrayView< T > & operator= (const ArrayView< T > &from)=default
 Opérateur de recopie.
 
template<std::size_t N>
constexpr ArrayView< T > & operator= (std::array< T, N > &from)
 
constexpr reference operator[] (Integer i)
 i-ème élément du tableau.
 
constexpr const_reference operator[] (Integer i) const
 i-ème élément du tableau.
 
constexpr reference operator() (Integer i)
 i-ème élément du tableau.
 
constexpr const_reference operator() (Integer i) const
 i-ème élément du tableau.
 
constexpr const_reference item (Integer i) const
 i-ème élément du tableau.
 
constexpr void setItem (Integer i, const_reference v)
 Positionne le i-ème élément du tableau.
 
constexpr Integer size () const noexcept
 Retourne la taille du tableau.
 
constexpr Integer length () const noexcept
 Nombre d'éléments du tableau.
 
constexpr iterator begin () noexcept
 Itérateur sur le premier élément du tableau.
 
constexpr iterator end () noexcept
 Itérateur sur le premier élément après la fin du tableau.
 
constexpr const_iterator begin () const noexcept
 Itérateur constant sur le premier élément du tableau.
 
constexpr const_iterator end () const noexcept
 Itérateur constant sur le premier élément après la fin du tableau.
 
constexpr reverse_iterator rbegin () noexcept
 Itérateur inverse sur le premier élément du tableau.
 
constexpr const_reverse_iterator rbegin () const noexcept
 Itérateur inverse sur le premier élément du tableau.
 
constexpr reverse_iterator rend () noexcept
 Itérateur inverse sur le premier élément après la fin du tableau.
 
constexpr const_reverse_iterator rend () const noexcept
 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.
 
constexpr pointer ptrAt (Integer index)
 Addresse du index-ème élément.
 
constexpr const_pointer ptrAt (Integer index) const
 Addresse du index-ème élément.
 
constexpr const_reference at (Integer i) const
 
void setAt (Integer i, const_reference value)
 
void fill (const T &o) noexcept
 Remplit le tableau avec la valeur o.
 
constexpr ConstArrayView< T > constView () const noexcept
 Vue constante sur cette vue.
 
constexpr ArrayView< T > subView (Integer abegin, Integer asize) noexcept
 Sous-vue à partir de l'élément abegin et contenant asize éléments.
 
constexpr ThatClass subPart (Integer abegin, Integer asize) noexcept
 Sous-vue à partir de l'élément abegin et contenant asize éléments.
 
constexpr ConstArrayView< T > subConstView (Integer abegin, Integer asize) const noexcept
 Sous-vue constante à partir de l'élément abegin et contenant asize éléments.
 
constexpr ArrayView< T > subViewInterval (Integer index, Integer nb_interval)
 Sous-vue correspondant à l'interval index sur nb_interval.
 
constexpr ThatClass subPartInterval (Integer index, Integer nb_interval)
 Sous-vue correspondant à l'interval index sur nb_interval.
 
template<class U >
void copy (const U &copy_array)
 Recopie le tableau copy_array dans l'instance.
 
constexpr bool empty () const noexcept
 Retourne true si le tableau est vide (dimension nulle)
 
bool contains (const_reference v) const
 true si le tableau contient l'élément de valeur v
 
void setArray (const ArrayView< T > &v) noexcept
 
constexpr pointer unguardedBasePointer () noexcept
 Pointeur sur le début de la vue.
 
constexpr const_pointer unguardedBasePointer () const noexcept
 Pointeur constant sur le début de la vue.
 
constexpr const_pointer data () const noexcept
 Pointeur sur le début de la vue.
 
constexpr pointer data () noexcept
 Pointeur constant sur le début de la vue.
 

Fonctions membres publiques statiques

static constexpr ThatClass create (pointer ptr, Integer asize) noexcept
 Construit une vue sur une zone mémoire commencant par ptr et.
 

Fonctions membres protégées

constexpr pointer _ptr () noexcept
 Retourne un pointeur sur le tableau.
 
constexpr const_pointer _ptr () const noexcept
 Retourne un pointeur sur le tableau.
 
void _setArray (pointer v, Integer s) noexcept
 Modifie le pointeur et la taille du tableau.
 
void _setPtr (pointer v) noexcept
 Modifie le pointeur du début du tableau.
 
void _setSize (Integer s) noexcept
 Modifie la taille du tableau.
 

Fonctions membres privées statiques

static constexpr Integer _min (Integer a, Integer b) noexcept
 

Attributs privés

Integer m_size
 Nombre d'éléments du tableau.
 
pointer m_ptr
 Pointeur sur le tableau.
 

Amis

template<typename T2 , Int64 Extent, Int64 MinValue>
class Span
 
template<typename T2 , Int32 Extent, Int32 MinValue>
class SmallSpan
 
bool operator== (const ArrayView< T > &rhs, const ArrayView< T > &lhs)
 
bool operator!= (const ArrayView< T > &rhs, const ArrayView< T > &lhs)
 
std::ostream & operator<< (std::ostream &o, const ArrayView< T > &val)
 

Description détaillée

template<class T>
class Arccore::ArrayView< T >

Vue modifiable d'un tableau d'un type T.

Cette classe template permet d'accéder et d'utiliser un tableau d'éléments du type T de la même manière qu'un tableau C standard. Elle maintient en plus la taille du tableau. La fonction size() permet de connaître le nombre d'éléments du tableau et l'opérateur operator[]() permet d'accéder à un élément donné.

Il est garanti que tous les éléments de la vue sont consécutifs en mémoire.

Cette classe ne gère aucune mémoire et c'est le conteneur associé qui la gère. Les conteneurs possibles fournis par Arccore sont les classes Array, UniqueArray ou SharedArray. Une vue n'est valide que tant que le conteneur associé n'est pas réalloué. De même, le contructeur et l'opérateur de recopie ne font que recopier les pointeurs sans réallouer la mémoire. Il faut donc les utiliser avec précaution.

Si Arccore est compilé en mode vérification (ARCCORE_CHECK est défini), les accès par l'intermédiaire de l'opérateurs operator[]() sont vérifiés et une exception IndexOutOfRangeException est lancé si un débordement de tableau a lieu. En attachant une session de debug au processus, il est possible de voir la pile d'appel au moment du débordement.

Voici des exemples d'utilisation:

Real t[5];
ArrayView<Real> a(t,5); // Gère un tableau de 5 réels.
Integer i = 3;
Real v = a[2]; // Affecte à la valeur du 2ème élément
a[i] = 5; // Affecte au 3ème élément la valeur 5
Lecteur des fichiers de maillage via la bibliothèque LIMA.
Definition Lima.cc:120
Vue modifiable d'un tableau d'un type T.
Int32 Integer
Type représentant un entier.

Il est aussi possible d'accéder aux éléments du tableau par des itérateurs de la même manière qu'avec les containers de la STL.

L'exemple suivant créé un itérateur i sur le tableau a et itère sur tout le tableau (méthode i()) et affiche les éléments:

for( Real v : a )
cout << v;

L'exemple suivant fait la somme des 3 premiers éléments du tableau:

Real sum = 0.0;
for( Real v : a.subView(0,3) )
sum += v;
constexpr ArrayView< T > subView(Integer abegin, Integer asize) noexcept
Sous-vue à partir de l'élément abegin et contenant asize éléments.

Définition à la ligne 93 du fichier arccore/src/base/arccore/base/ArrayView.h.

Documentation des définitions de type membres

◆ const_iter

template<class T >
typedef ConstIterT< ArrayView<T> > Arccore::ArrayView< T >::const_iter

Type d'un itérateur constant sur tout le tableau.

Définition à la ligne 124 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ const_iterator

template<class T >
typedef ArrayIterator<const_pointer> Arccore::ArrayView< T >::const_iterator

Type de l'itérateur constant sur un élément du tableau.

Définition à la ligne 111 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ const_pointer

template<class T >
typedef const value_type* Arccore::ArrayView< T >::const_pointer

Type pointeur constant d'un élément du tableau.

Définition à la ligne 107 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ const_reference

template<class T >
typedef const value_type& Arccore::ArrayView< T >::const_reference

Type référence constante d'un élément du tableau.

Définition à la ligne 115 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ const_reverse_iterator

template<class T >
typedef std::reverse_iterator<const_iterator> Arccore::ArrayView< T >::const_reverse_iterator

Définition à la ligne 127 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ difference_type

template<class T >
typedef std::ptrdiff_t Arccore::ArrayView< T >::difference_type

Type d'une distance entre itérateur éléments du tableau.

Définition à la ligne 119 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ iter

template<class T >
typedef IterT< ArrayView<T> > Arccore::ArrayView< T >::iter

Type d'un itérateur sur tout le tableau.

Définition à la ligne 122 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ iterator

template<class T >
typedef ArrayIterator<pointer> Arccore::ArrayView< T >::iterator

Type de l'itérateur sur un élément du tableau.

Définition à la ligne 109 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ pointer

template<class T >
typedef value_type* Arccore::ArrayView< T >::pointer

Type pointeur d'un élément du tableau.

Définition à la ligne 105 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ reference

template<class T >
typedef value_type& Arccore::ArrayView< T >::reference

Type référence d'un élément du tableau.

Définition à la ligne 113 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ reverse_iterator

template<class T >
typedef std::reverse_iterator<iterator> Arccore::ArrayView< T >::reverse_iterator

Définition à la ligne 126 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ size_type

template<class T >
typedef Integer Arccore::ArrayView< T >::size_type

Type indexant le tableau.

Définition à la ligne 117 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ ThatClass

template<class T >
using Arccore::ArrayView< T >::ThatClass = ArrayView<T>

Définition à la ligne 100 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ value_type

template<class T >
typedef T Arccore::ArrayView< T >::value_type

Type des éléments du tableau.

Définition à la ligne 103 du fichier arccore/src/base/arccore/base/ArrayView.h.

Documentation des constructeurs et destructeur

◆ ArrayView() [1/3]

template<class T >
constexpr Arccore::ArrayView< T >::ArrayView ( )
inlineconstexprnoexcept

Construit une vue vide.

Définition à la ligne 132 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ ArrayView() [2/3]

template<class T >
constexpr Arccore::ArrayView< T >::ArrayView ( Integer  asize,
pointer  ptr 
)
inlineconstexprnoexcept

Construit une vue sur une zone mémoire commencant par ptr et.

Définition à la ligne 139 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ ArrayView() [3/3]

template<class T >
template<std::size_t N>
constexpr Arccore::ArrayView< T >::ArrayView ( std::array< T, N > &  v)
inlineconstexpr

Construit une vue sur une zone mémoire commencant par ptr et contenant asize éléments.

Définition à la ligne 143 du fichier arccore/src/base/arccore/base/ArrayView.h.

Documentation des fonctions membres

◆ _min()

template<class T >
static constexpr Integer Arccore::ArrayView< T >::_min ( Integer  a,
Integer  b 
)
inlinestaticconstexprprivatenoexcept

Définition à la ligne 516 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ _ptr() [1/2]

template<class T >
constexpr const_pointer Arccore::ArrayView< T >::_ptr ( ) const
inlineconstexprprotectednoexcept

Retourne un pointeur sur le tableau.

Cette méthode est identique à unguardedBasePointer() (i.e: il faudra penser à la supprimer)

Définition à la ligne 483 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr.

◆ _ptr() [2/2]

template<class T >
constexpr pointer Arccore::ArrayView< T >::_ptr ( )
inlineconstexprprotectednoexcept

Retourne un pointeur sur le tableau.

Cette méthode est identique à unguardedBasePointer() (i.e: il faudra penser à la supprimer)

Définition à la ligne 476 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr.

◆ _setArray()

template<class T >
void Arccore::ArrayView< T >::_setArray ( pointer  v,
Integer  s 
)
inlineprotectednoexcept

Modifie le pointeur et la taille du tableau.

C'est à la classe dérivée de vérifier la cohérence entre le pointeur alloué et la dimension donnée.

Définition à la ligne 491 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ _setPtr()

template<class T >
void Arccore::ArrayView< T >::_setPtr ( pointer  v)
inlineprotectednoexcept

Modifie le pointeur du début du tableau.

C'est à la classe dérivée de vérifier la cohérence entre le pointeur alloué et la dimension donnée.

Définition à la ligne 499 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr.

◆ _setSize()

template<class T >
void Arccore::ArrayView< T >::_setSize ( Integer  s)
inlineprotectednoexcept

Modifie la taille du tableau.

C'est à la classe dérivée de vérifier la cohérence entre le pointeur alloué et la dimension donnée.

Définition à la ligne 507 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_size.

◆ ARCCORE_DEPRECATED_REASON() [1/2]

template<class T >
Arccore::ArrayView< T >::ARCCORE_DEPRECATED_REASON ( "Y2023: Use begin()/end() instead"  ) const
inline

Intervalle d'itération du premier au dernièr élément.

Définition à la ligne 265 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ ARCCORE_DEPRECATED_REASON() [2/2]

template<class T >
Arccore::ArrayView< T >::ARCCORE_DEPRECATED_REASON ( "Y2023: Use begin()/end() instead"  )
inline

Intervalle d'itération du premier au dernièr élément.

Définition à la ligne 259 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ at()

template<class T >
constexpr const_reference Arccore::ArrayView< T >::at ( Integer  i) const
inlineconstexpr

Définition à la ligne 287 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ begin() [1/2]

template<class T >
constexpr const_iterator Arccore::ArrayView< T >::begin ( ) const
inlineconstexprnoexcept

Itérateur constant sur le premier élément du tableau.

Définition à la ligne 244 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr.

◆ begin() [2/2]

◆ constView()

template<class T >
constexpr ConstArrayView< T > Arccore::ArrayView< T >::constView ( ) const
inlineconstexprnoexcept

Vue constante sur cette vue.

Définition à la ligne 310 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ contains()

template<class T >
bool Arccore::ArrayView< T >::contains ( const_reference  v) const
inline

true si le tableau contient l'élément de valeur v

Définition à la ligne 393 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ copy()

template<class T >
template<class U >
void Arccore::ArrayView< T >::copy ( const U &  copy_array)
inline

Recopie le tableau copy_array dans l'instance.

Comme aucune allocation mémoire n'est effectuée, le nombre d'éléments de copy_array doit être inférieur ou égal au nombre d'éléments courant. S'il est inférieur, les éléments du tableau courant situés à la fin du tableau sont inchangés

Définition à la ligne 378 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

Référencé par Arcane::TimeHistoryMngInternal::_fromLegacyFormat(), Arcane::TimeHistoryValueT< DataType >::fromOldToNewVariables(), Arcane::ConnectivityItemVector::resizeAndCopy(), et Arcane::TimeHistoryMngInternal::updateGlobalTimeCurve().

◆ create()

template<class T >
static constexpr ThatClass Arccore::ArrayView< T >::create ( pointer  ptr,
Integer  asize 
)
inlinestaticconstexprnoexcept

Construit une vue sur une zone mémoire commencant par ptr et.

Définition à la ligne 161 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ data() [1/2]

template<class T >
constexpr const_pointer Arccore::ArrayView< T >::data ( ) const
inlineconstexprnoexcept

◆ data() [2/2]

template<class T >
constexpr pointer Arccore::ArrayView< T >::data ( )
inlineconstexprnoexcept

Pointeur constant sur le début de la vue.

Avertissement
Les accès via le pointeur retourné ne pourront pas être pas vérifiés par Arcane à la différence des accès via operator[](): aucune vérification de dépassement n'est possible, même en mode vérification.

Définition à la ligne 448 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr.

◆ empty()

template<class T >
constexpr bool Arccore::ArrayView< T >::empty ( ) const
inlineconstexprnoexcept

Retourne true si le tableau est vide (dimension nulle)

Définition à la ligne 391 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_size.

Référencé par Arcane::VariableSynchronizerComputeList::_createList(), et Arcane::ItemGroupImpl::empty().

◆ end() [1/2]

template<class T >
constexpr const_iterator Arccore::ArrayView< T >::end ( ) const
inlineconstexprnoexcept

Itérateur constant sur le premier élément après la fin du tableau.

Définition à la ligne 246 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ end() [2/2]

template<class T >
constexpr iterator Arccore::ArrayView< T >::end ( )
inlineconstexprnoexcept

Itérateur sur le premier élément après la fin du tableau.

Définition à la ligne 242 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

Référencé par Arccore::ArrayView< T >::rbegin(), et Arccore::ArrayView< T >::rbegin().

◆ fill()

template<class T >
void Arccore::ArrayView< T >::fill ( const T &  o)
inlinenoexcept

◆ item()

template<class T >
constexpr const_reference Arccore::ArrayView< T >::item ( Integer  i) const
inlineconstexpr

i-ème élément du tableau.

En mode check, vérifie les débordements.

Définition à la ligne 217 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ length()

template<class T >
constexpr Integer Arccore::ArrayView< T >::length ( ) const
inlineconstexprnoexcept

Nombre d'éléments du tableau.

Définition à la ligne 237 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_size.

◆ operator()() [1/2]

template<class T >
constexpr reference Arccore::ArrayView< T >::operator() ( Integer  i)
inlineconstexpr

i-ème élément du tableau.

En mode check, vérifie les débordements.

Définition à la ligne 195 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ operator()() [2/2]

template<class T >
constexpr const_reference Arccore::ArrayView< T >::operator() ( Integer  i) const
inlineconstexpr

i-ème élément du tableau.

En mode check, vérifie les débordements.

Définition à la ligne 206 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ operator=()

template<class T >
template<std::size_t N>
constexpr ArrayView< T > & Arccore::ArrayView< T >::operator= ( std::array< T, N > &  from)
inlineconstexpr

Définition à la ligne 150 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ operator[]() [1/2]

template<class T >
constexpr reference Arccore::ArrayView< T >::operator[] ( Integer  i)
inlineconstexpr

i-ème élément du tableau.

En mode check, vérifie les débordements.

Définition à la ligne 173 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ operator[]() [2/2]

template<class T >
constexpr const_reference Arccore::ArrayView< T >::operator[] ( Integer  i) const
inlineconstexpr

i-ème élément du tableau.

En mode check, vérifie les débordements.

Définition à la ligne 184 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ ptrAt() [1/2]

template<class T >
constexpr pointer Arccore::ArrayView< T >::ptrAt ( Integer  index)
inlineconstexpr

Addresse du index-ème élément.

Définition à la ligne 273 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ ptrAt() [2/2]

template<class T >
constexpr const_pointer Arccore::ArrayView< T >::ptrAt ( Integer  index) const
inlineconstexpr

Addresse du index-ème élément.

Définition à la ligne 280 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ rbegin() [1/2]

template<class T >
constexpr const_reverse_iterator Arccore::ArrayView< T >::rbegin ( ) const
inlineconstexprnoexcept

Itérateur inverse sur le premier élément du tableau.

Définition à la ligne 250 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::end().

◆ rbegin() [2/2]

template<class T >
constexpr reverse_iterator Arccore::ArrayView< T >::rbegin ( )
inlineconstexprnoexcept

Itérateur inverse sur le premier élément du tableau.

Définition à la ligne 248 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::end().

◆ rend() [1/2]

template<class T >
constexpr const_reverse_iterator Arccore::ArrayView< T >::rend ( ) const
inlineconstexprnoexcept

Itérateur inverse sur le premier élément après la fin du tableau.

Définition à la ligne 254 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::begin().

◆ rend() [2/2]

template<class T >
constexpr reverse_iterator Arccore::ArrayView< T >::rend ( )
inlineconstexprnoexcept

Itérateur inverse sur le premier élément après la fin du tableau.

Définition à la ligne 252 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::begin().

◆ setArray()

template<class T >
void Arccore::ArrayView< T >::setArray ( const ArrayView< T > &  v)
inlinenoexcept

Définition à la ligne 404 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ setAt()

template<class T >
void Arccore::ArrayView< T >::setAt ( Integer  i,
const_reference  value 
)
inline

Définition à la ligne 294 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ setItem()

template<class T >
constexpr void Arccore::ArrayView< T >::setItem ( Integer  i,
const_reference  v 
)
inlineconstexpr

Positionne le i-ème élément du tableau.

En mode check, vérifie les débordements.

Définition à la ligne 228 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ size()

template<class T >
constexpr Integer Arccore::ArrayView< T >::size ( ) const
inlineconstexprnoexcept

Retourne la taille du tableau.

Définition à la ligne 235 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_size.

Référencé par Arcane::CaseOptionMultiEnumT< T >::_allocate(), Arcane::ArcaneCheckpointModule::_doCheckpoint(), Arcane::CaseOptionMultiEnumT< T >::_nbElem(), Arcane::ArcanePostProcessingModule::_readConfig(), Arcane::mesh::DynamicMesh::_readFromDump(), Arcane::LimaCutInfosReader::_readUniqueIndex(), Arcane::mesh::DynamicMeshIncrementalBuilder::addCells(), Arcane::mesh::DynamicMeshIncrementalBuilder::addCells3(), Arcane::mesh::DynamicMeshIncrementalBuilder::addEdges(), Arcane::mesh::DynamicMeshIncrementalBuilder::addEdges2(), Arcane::mesh::DynamicMeshIncrementalBuilder::addFaces(), Arcane::mesh::DynamicMeshIncrementalBuilder::addFaces2(), Arcane::mesh::DynamicMeshIncrementalBuilder::addHChildrenCells(), Arcane::mesh::DynamicMeshIncrementalBuilder::addNodes(), Arcane::mesh::DynamicMeshIncrementalBuilder::addNodes2(), Arcane::mesh::ParticleFamily::addParticles(), Arcane::TimeHistoryValueT< DataType >::addValue(), Arcane::VariableRefArrayT< T >::arraySize(), Arcane::TimeHistoryValueT< DataType >::arrayToWrite(), Arcane::mesh::IncrementalItemConnectivity::compactConnectivityList(), Arcane::ArcaneCaseMeshMasterService::createMeshes(), Arcane::Bzip2DeflateService::decompress(), Arcane::LZ4DeflateService::decompress(), Arcane::mesh::IncrementalItemConnectivity::dumpStats(), Arcane::mesh::OneItemIncrementalItemConnectivity::dumpStats(), Arcane::PDESRandomNumberGeneratorService::generateRandomNumber(), Arcane::GetVariablesValuesParallelOperation::getVariableValues(), Arcane::GetVariablesValuesParallelOperation::getVariableValues(), Arcane::mesh::OneItemIncrementalItemConnectivity::notifySourceFamilyLocalIdChanged(), Arccore::ConstArrayView< T >::operator=(), Arcane::mesh::ItemFamily::readFromDump(), Arcane::TimeHistoryMngInternal::readVariables(), Arcane::TimeHistoryValueT< DataType >::removeAfterIteration(), Arcane::MeshUtils::removeItemAndKeepOrder(), Arcane::TimeHistoryMngInternal::resizeArrayAfterRestore(), Arcane::mesh::IncrementalItemConnectivity::setPreAllocatedSize(), Arcane::ItemGroupImpl::size(), et Arcane::TimeHistoryValueT< DataType >::size().

◆ subConstView()

template<class T >
constexpr ConstArrayView< T > Arccore::ArrayView< T >::subConstView ( Integer  abegin,
Integer  asize 
) const
inlineconstexprnoexcept

Sous-vue constante à partir de l'élément abegin et contenant asize éléments.

Si (abegin+ asize) est supérieur à la taille du tableau, la vue est tronquée à cette taille, retournant éventuellement une vue vide.

Définition à la ligne 349 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

◆ subPart()

template<class T >
constexpr ThatClass Arccore::ArrayView< T >::subPart ( Integer  abegin,
Integer  asize 
)
inlineconstexprnoexcept

Sous-vue à partir de l'élément abegin et contenant asize éléments.

Si (abegin+ asize) est supérieur à la taille du tableau, la vue est tronquée à cette taille, retournant éventuellement une vue vide.

Définition à la ligne 337 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::subView().

◆ subPartInterval()

template<class T >
constexpr ThatClass Arccore::ArrayView< T >::subPartInterval ( Integer  index,
Integer  nb_interval 
)
inlineconstexpr

Sous-vue correspondant à l'interval index sur nb_interval.

Définition à la ligne 364 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ subView()

template<class T >
constexpr ArrayView< T > Arccore::ArrayView< T >::subView ( Integer  abegin,
Integer  asize 
)
inlineconstexprnoexcept

Sous-vue à partir de l'élément abegin et contenant asize éléments.

Si (abegin+ asize) est supérieur à la taille du tableau, la vue est tronquée à cette taille, retournant éventuellement une vue vide.

Définition à la ligne 322 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr, et Arccore::ArrayView< T >::m_size.

Référencé par Arccore::ArrayView< T >::subPart().

◆ subViewInterval()

template<class T >
constexpr ArrayView< T > Arccore::ArrayView< T >::subViewInterval ( Integer  index,
Integer  nb_interval 
)
inlineconstexpr

Sous-vue correspondant à l'interval index sur nb_interval.

Définition à la ligne 358 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ unguardedBasePointer() [1/2]

template<class T >
constexpr const_pointer Arccore::ArrayView< T >::unguardedBasePointer ( ) const
inlineconstexprnoexcept

Pointeur constant sur le début de la vue.

Avertissement
Les accès via le pointeur retourné ne pourront pas être pas vérifiés par Arcane à la différence des accès via operator[](): aucune vérification de dépassement n'est possible, même en mode vérification.

Définition à la ligne 428 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr.

◆ unguardedBasePointer() [2/2]

template<class T >
constexpr pointer Arccore::ArrayView< T >::unguardedBasePointer ( )
inlineconstexprnoexcept

Pointeur sur le début de la vue.

Avertissement
Les accès via le pointeur retourné ne pourront pas être pas vérifiés par Arcane à la différence des accès via operator[](): aucune vérification de dépassement n'est possible, même en mode vérification.

Définition à la ligne 418 du fichier arccore/src/base/arccore/base/ArrayView.h.

Références Arccore::ArrayView< T >::m_ptr.

Documentation des fonctions amies et associées

◆ operator!=

template<class T >
bool operator!= ( const ArrayView< T > &  rhs,
const ArrayView< T > &  lhs 
)
friend

Définition à la ligne 457 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ operator<<

template<class T >
std::ostream & operator<< ( std::ostream &  o,
const ArrayView< T > &  val 
)
friend

Définition à la ligne 462 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ operator==

template<class T >
bool operator== ( const ArrayView< T > &  rhs,
const ArrayView< T > &  lhs 
)
friend

Définition à la ligne 452 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ SmallSpan

template<class T >
template<typename T2 , Int32 Extent, Int32 MinValue>
friend class SmallSpan
friend

Définition à la ligne 96 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ Span

template<class T >
template<typename T2 , Int64 Extent, Int64 MinValue>
friend class Span
friend

Définition à la ligne 95 du fichier arccore/src/base/arccore/base/ArrayView.h.

Documentation des données membres

◆ m_ptr

◆ m_size


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