Arcane  4.2.1.0
Documentation développeur
Chargement...
Recherche...
Aucune correspondance
Référence du modèle de la classe Arcane::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 Arcane::ArrayView< T >:
Graphe de collaboration de Arcane::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.
ArrayRange< pointerrange ()
 Intervalle d'itération du premier au dernièr élément.
ArrayRange< const_pointerrange () const
 Intervalle d'itération du premier au dernièr élément.
constexpr pointer ptrAt (Integer index)
 Adresse du index-ème élément.
constexpr const_pointer ptrAt (Integer index) const
 Adresse 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>
class Span
template<typename T2, Int32 Extent>
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 Arcane::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
constexpr ArrayView() noexcept
Construit une vue vide.
Int32 Integer
Type représentant un entier.
double Real
Type représentant un réel.

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;

Définition à la ligne 94 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> > Arcane::ArrayView< T >::const_iter

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

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

◆ const_iterator

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

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

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

◆ const_pointer

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

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

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

◆ const_reference

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

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

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

◆ const_reverse_iterator

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

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

◆ difference_type

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

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

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

◆ iter

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

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

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

◆ iterator

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

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

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

◆ pointer

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

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

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

◆ reference

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

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

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

◆ reverse_iterator

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

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

◆ size_type

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

Type indexant le tableau.

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

◆ ThatClass

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

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

◆ value_type

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

Type des éléments du tableau.

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

Documentation des constructeurs et destructeur

◆ ArrayView() [1/3]

template<class T>
Arcane::ArrayView< T >::ArrayView ( )
inlineconstexprnoexcept

Construit une vue vide.

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

Référencé par Arcane::CaseOptionMultiEnumT< T >::_allocate(), Arcane::ArrayView< Type >::subView(), et Arcane::VariableRefArrayT< T >::VariableRefArrayT().

Voici le graphe des appelants de cette fonction :

◆ ArrayView() [2/3]

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

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

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

◆ ArrayView() [3/3]

template<class T>
template<std::size_t N>
Arcane::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 150 du fichier arccore/src/base/arccore/base/ArrayView.h.

Documentation des fonctions membres

◆ _min()

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

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

◆ _ptr() [1/2]

template<class T>
const_pointer Arcane::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 493 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ _ptr() [2/2]

template<class T>
pointer Arcane::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 486 du fichier arccore/src/base/arccore/base/ArrayView.h.

Référencé par Arcane::CaseOptionMultiSimpleT< T >::print().

Voici le graphe des appelants de cette fonction :

◆ _setArray()

template<class T>
void Arcane::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 501 du fichier arccore/src/base/arccore/base/ArrayView.h.

Référencé par Arcane::CaseOptionMultiSimpleT< T >::_search().

Voici le graphe des appelants de cette fonction :

◆ _setPtr()

template<class T>
void Arcane::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 513 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ _setSize()

template<class T>
void Arcane::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 521 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ at()

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

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

◆ begin() [1/2]

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

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

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

◆ begin() [2/2]

template<class T>
iterator Arcane::ArrayView< T >::begin ( )
inlineconstexprnoexcept

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

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

Référencé par Arcane::ArrayView< Type >::rend(), et Arcane::ArrayView< Type >::rend().

Voici le graphe des appelants de cette fonction :

◆ constView()

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

Vue constante sur cette vue.

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

Référencé par Arcane::math::mult().

Voici le graphe des appelants de cette fonction :

◆ contains()

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

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

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

◆ copy()

template<class T>
template<class U>
void Arcane::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 388 du fichier arccore/src/base/arccore/base/ArrayView.h.

Référencé par Arcane::Hdf5VariableReaderHelper2::_createCorrespondance(), Arcane::VariableUtilsInternal::fillFloat64Array(), Arcane::MessagePassing::namedBarrier(), et Arcane::ItemGroupImpl::setItems().

Voici le graphe des appelants de cette fonction :

◆ create()

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

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

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

◆ data() [1/2]

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

◆ data() [2/2]

template<class T>
pointer Arcane::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 458 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ empty()

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

Retourne true si le tableau est vide (dimension nulle).

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

Référencé par Arcane::VariableSynchronizerComputeList::_createList(), et Arcane::LimaUtils::createGroup().

Voici le graphe des appelants de cette fonction :

◆ end() [1/2]

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

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

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

◆ end() [2/2]

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

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

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

Référencé par Arcane::ArrayView< Type >::rbegin(), et Arcane::ArrayView< Type >::rbegin().

Voici le graphe des appelants de cette fonction :

◆ fill()

◆ item()

template<class T>
const_reference Arcane::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 226 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ length()

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

Nombre d'éléments du tableau.

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

◆ operator()() [1/2]

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

i-ème élément du tableau.

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

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

◆ operator()() [2/2]

template<class T>
const_reference Arcane::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 215 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ operator=()

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

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

◆ operator[]() [1/2]

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

i-ème élément du tableau.

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

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

◆ operator[]() [2/2]

template<class T>
const_reference Arcane::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 193 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ ptrAt() [1/2]

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

Adresse du index-ème élément.

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

◆ ptrAt() [2/2]

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

Adresse du index-ème élément.

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

◆ range() [1/2]

template<class T>
ArrayRange< pointer > Arcane::ArrayView< T >::range ( )
inline

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

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

◆ range() [2/2]

template<class T>
ArrayRange< const_pointer > Arcane::ArrayView< T >::range ( ) const
inline

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

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

◆ rbegin() [1/2]

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

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

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

◆ rbegin() [2/2]

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

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

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

◆ rend() [1/2]

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

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

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

◆ rend() [2/2]

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

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

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

◆ setArray()

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

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

◆ setAt()

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

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

◆ setItem()

template<class T>
void Arcane::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 237 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ size()

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

Retourne la taille du tableau.

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

Référencé par Arcane::CaseOptionMultiEnumT< T >::_allocate(), Arcane::VariableSynchronizerComputeList::_createList(), Arcane::TimeHistoryMngInternal::_fromLegacyFormat(), Arcane::CaseOptionMultiEnumT< T >::_nbElem(), Arcane::mesh::ItemFamily::_readGroups(), Arcane::LimaCutInfosReader::_readUniqueIndex(), Arcane::LimaCutInfosReader::_readUniqueIndexFromXml(), Arcane::MetisMeshPartitioner::_removeEmptyPartsV2Helper(), Arcane::math::add(), Arcane::math::add(), Arcane::mesh::DynamicMeshIncrementalBuilder::addCells(), Arcane::mesh::DynamicMeshIncrementalBuilder::addCells3(), Arcane::mesh::DoFFamily::addDoFs(), Arcane::mesh::DynamicMeshIncrementalBuilder::addEdges(), Arcane::mesh::DynamicMeshIncrementalBuilder::addEdges2(), Arcane::mesh::DynamicMeshIncrementalBuilder::addFaces(), Arcane::mesh::DynamicMeshIncrementalBuilder::addFaces2(), Arcane::mesh::DynamicMeshIncrementalBuilder::addFamilyItems(), Arcane::mesh::DoFFamily::addGhostDoFs(), Arcane::mesh::DynamicMeshIncrementalBuilder::addHChildrenCells(), Arcane::mesh::DynamicMeshIncrementalBuilder::addNodes(), Arcane::mesh::DynamicMeshIncrementalBuilder::addNodes2(), Arcane::mesh::ParticleFamily::addParticles(), Arcane::IBinaryMathFunctor< Arg1, Arg2, ReturnType >::apply(), Arcane::VariableRefArrayT< DataType >::arraySize(), Arcane::CartesianMeshNumberingMngInternal::cellFaceUniqueIds(), Arcane::CartesianMeshNumberingMngInternal::cellFaceUniqueIds(), Arcane::CartesianMeshNumberingMngInternal::cellNodeUniqueIds(), Arcane::CartesianMeshNumberingMngInternal::cellNodeUniqueIds(), Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdsAroundCell(), Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdsAroundCell(), Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdsAroundNode(), Arcane::CartesianMeshNumberingMngInternal::cellUniqueIdsAroundNode(), Arcane::ItemGroupImpl::changeIds(), Arcane::UdunitsPhysicalUnitConverter::convert(), Arcane::LimaUtils::createGroup(), Arcane::Bzip2DeflateService::decompress(), Arcane::LZ4DeflateService::decompress(), Arcane::DataTypeTraitsT< Real2 >::fillNan(), Arcane::DataTypeTraitsT< Real2x2 >::fillNan(), Arcane::DataTypeTraitsT< Real3 >::fillNan(), Arcane::DataTypeTraitsT< Real3x3 >::fillNan(), Arcane::MpiParallelMng::freeRequests(), Arcane::TimeHistoryValueT< DataType >::fromOldToNewVariables(), Arcane::PDESRandomNumberGeneratorService::generateRandomNumber(), Arcane::PDESRandomNumberGeneratorService::generateRandomSeed(), Arcane::UnstructuredMeshUtilities::getFacesLocalIdFromConnectivity(), Arcane::ParameterOptionAddr::getIndexInAddr(), Arcane::GetVariablesValuesParallelOperation::getVariableValues(), Arcane::UnstructuredMeshUtilities::localIdsFromConnectivity(), Arcane::math::mult(), Arcane::math::mult(), Arcane::MessagePassing::namedBarrier(), Arcane::mesh::IncrementalItemConnectivityBase::notifyTargetFamilyLocalIdChanged(), Arcane::ConstArrayView< Type >::operator=(), Arcane::math::power(), Arcane::mesh::ItemFamily::readFromDump(), Arcane::MeshUtils::removeItemAndKeepOrder(), Arcane::MetisGraphGather::scatterPart(), Arcane::ScalarDataT< DataType >::serialize(), Arcane::math::sub(), Arcane::math::sub(), et Arcane::math::truncateDouble().

◆ subConstView()

template<class T>
ConstArrayView< T > Arcane::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 359 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ subPart()

template<class T>
ThatClass Arcane::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 347 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ subPartInterval()

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

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

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

◆ subView()

template<class T>
ArrayView< T > Arcane::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 332 du fichier arccore/src/base/arccore/base/ArrayView.h.

Référencé par Arcane::LimaUtils::createGroup(), et Arcane::ArrayView< Type >::subPart().

Voici le graphe des appelants de cette fonction :

◆ subViewInterval()

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

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

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

◆ unguardedBasePointer() [1/2]

template<class T>
const_pointer Arcane::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 438 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ unguardedBasePointer() [2/2]

template<class T>
pointer Arcane::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 428 du fichier arccore/src/base/arccore/base/ArrayView.h.

Référencé par Arcane::MessagePassing::namedBarrier().

Voici le graphe des appelants de cette fonction :

◆ operator!=

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

Définition à la ligne 467 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 472 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 462 du fichier arccore/src/base/arccore/base/ArrayView.h.

◆ SmallSpan

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

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

◆ Span

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

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

Documentation des données membres

◆ m_ptr

template<class T>
pointer Arcane::ArrayView< T >::m_ptr
private

Pointeur sur le tableau.

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

◆ m_size

template<class T>
Integer Arcane::ArrayView< T >::m_size
private

Nombre d'éléments du tableau.

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


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