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

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

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

+ Graphe de collaboration de Arccore::ConstArrayView< T >:

Types publics

using ThatClass = ConstArrayView< T >
 
typedef T value_type
 Type des éléments du tableau.
 
typedef const value_typeconst_pointer
 Type pointeur constant d'un élément du tableau.
 
typedef ArrayIterator< const_pointerconst_iterator
 Type de l'itérateur constant sur 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.
 
using const_value_type = typename std::add_const_t< value_type >
 
typedef ConstIterT< ConstArrayView< T > > const_iter
 Type d'un itérateur constant sur tout le tableau.
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 

Fonctions membres publiques

constexpr ConstArrayView () noexcept
 Construit un tableau vide.
 
constexpr ConstArrayView (Integer s, const_pointer ptr) noexcept
 Construit un tableau avec s élément.
 
 ConstArrayView (const ConstArrayView< T > &from)=default
 Constructeur par copie.
 
constexpr ConstArrayView (const ArrayView< T > &from) noexcept
 Constructeur par copie.
 
template<std::size_t N, typename X , typename = std::enable_if_t<std::is_same_v<X,const_value_type>>>
constexpr ConstArrayView (const std::array< X, N > &v)
 Création depuis un std::array.
 
ConstArrayView< T > & operator= (const ConstArrayView< T > &from)=default
 Opérateur de recopie.
 
constexpr ConstArrayView< T > & operator= (const ArrayView< T > &from)
 Opérateur de recopie.
 
template<std::size_t N, typename X , typename = std::enable_if_t<std::is_same_v<X,const_value_type>>>
constexpr ConstArrayView< T > & operator= (const std::array< X, N > &from)
 Opérateur de recopie.
 
constexpr ConstArrayView< T > subView (Integer abegin, Integer asize) const noexcept
 Sous-vue (constante) à partir de l'élément abegin et contenant asize éléments.
 
constexpr ThatClass subPart (Integer abegin, Integer asize) const noexcept
 Sous-vue (constante) à 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 ConstArrayView< T > subViewInterval (Integer index, Integer nb_interval) const
 Sous-vue correspondant à l'interval index sur nb_interval.
 
constexpr ThatClass subPartInterval (Integer index, Integer nb_interval) const
 Sous-vue correspondant à l'interval index sur nb_interval.
 
constexpr const_pointer ptrAt (Integer index) const
 Addresse du index-ème élément.
 
constexpr const_reference operator[] (Integer i) const
 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 Integer size () const noexcept
 Nombre d'éléments du tableau.
 
constexpr Integer length () const noexcept
 Nombre d'éléments du tableau.
 
constexpr const_iterator begin () const noexcept
 Itérateur sur le premier élément du tableau.
 
constexpr const_iterator end () const noexcept
 Itérateur sur le premier élément après la fin du tableau.
 
constexpr const_reverse_iterator rbegin () const noexcept
 Itérateur inverse sur le premier élément du tableau.
 
constexpr const_reverse_iterator rend () const noexcept
 Itérateur inverse sur le premier élément après la fin du tableau.
 
constexpr bool empty () const noexcept
 true si le tableau est vide (size()==0)
 
bool contains (const_reference v) const
 true si le tableau contient l'élément de valeur v
 
void setArray (const ConstArrayView< T > &v) noexcept
 
constexpr const_pointer unguardedBasePointer () const noexcept
 Pointeur sur la mémoire allouée.
 
constexpr const_pointer data () const noexcept
 Pointeur sur la mémoire allouée.
 
 ARCCORE_DEPRECATED_REASON ("Y2023: Use begin()/end() instead") ArrayRange< const_pointer > range() const
 Intervalle d'itération du premier au dernièr élément.
 

Fonctions membres publiques statiques

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

Fonctions membres privées statiques

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

Attributs privés

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

Amis

class Span< T >
 
class Span< const T >
 
class SmallSpan< T >
 
class SmallSpan< const T >
 
bool operator== (const ConstArrayView< T > &rhs, const ConstArrayView< T > &lhs)
 
bool operator!= (const ConstArrayView< T > &rhs, const ConstArrayView< T > &lhs)
 
std::ostream & operator<< (std::ostream &o, const ConstArrayView< T > &val)
 

Description détaillée

template<class T>
class Arccore::ConstArrayView< T >

Vue constante d'un tableau de type T.

Cette classe fonctionne de la même manière que ArrayView à la seule différence qu'il n'est pas possible de modifier les éléments du tableau.

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

Documentation des définitions de type membres

◆ const_iter

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

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

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

◆ const_iterator

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

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

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

◆ const_pointer

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

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

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

◆ const_reference

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

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

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

◆ const_reverse_iterator

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

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

◆ const_value_type

template<class T >
using Arccore::ConstArrayView< T >::const_value_type = typename std::add_const_t<value_type>

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

◆ difference_type

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

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

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

◆ size_type

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

Type indexant le tableau.

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

◆ ThatClass

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

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

◆ value_type

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

Type des éléments du tableau.

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

Documentation des constructeurs et destructeur

◆ ConstArrayView() [1/4]

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

Construit un tableau vide.

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

◆ ConstArrayView() [2/4]

template<class T >
constexpr Arccore::ConstArrayView< T >::ConstArrayView ( Integer  s,
const_pointer  ptr 
)
inlineconstexprnoexcept

Construit un tableau avec s élément.

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

◆ ConstArrayView() [3/4]

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

Constructeur par copie.

Avertissement
Seul le pointeur est copié. Aucune copie mémoire n'est effectuée.

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

◆ ConstArrayView() [4/4]

template<class T >
template<std::size_t N, typename X , typename = std::enable_if_t<std::is_same_v<X,const_value_type>>>
constexpr Arccore::ConstArrayView< T >::ConstArrayView ( const std::array< X, N > &  v)
inlineconstexpr

Création depuis un std::array.

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

Documentation des fonctions membres

◆ _min()

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

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

◆ ARCCORE_DEPRECATED_REASON()

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

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

◆ begin()

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

◆ contains()

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

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

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

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

◆ create()

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

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

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

◆ data()

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

Pointeur sur la mémoire allouée.

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 759 du fichier arccore/src/base/arccore/base/ArrayView.h.

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

Référencé par Arcane::Bzip2DeflateService::compress(), et Arcane::LZ4DeflateService::compress().

◆ empty()

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

true si le tableau est vide (size()==0)

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

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

◆ end()

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

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

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

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

Référencé par Arccore::ConstArrayView< T >::rbegin().

◆ item()

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

i-ème élément du tableau.

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

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

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

◆ length()

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

Nombre d'éléments du tableau.

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

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

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

◆ operator()()

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

i-ème élément du tableau.

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

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

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

◆ operator=() [1/3]

template<class T >
constexpr ConstArrayView< T > & Arccore::ConstArrayView< T >::operator= ( const ArrayView< T > &  from)
inlineconstexpr

Opérateur de recopie.

Avertissement
Seul le pointeur est copié. Aucune copie mémoire n'est effectuée.

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

Références Arccore::ArrayView< T >::data(), Arccore::ConstArrayView< T >::m_ptr, Arccore::ConstArrayView< T >::m_size, et Arccore::ArrayView< T >::size().

◆ operator=() [2/3]

template<class T >
ConstArrayView< T > & Arccore::ConstArrayView< T >::operator= ( const ConstArrayView< T > &  from)
default

Opérateur de recopie.

Avertissement
Seul le pointeur est copié. Aucune copie mémoire n'est effectuée.

◆ operator=() [3/3]

template<class T >
template<std::size_t N, typename X , typename = std::enable_if_t<std::is_same_v<X,const_value_type>>>
constexpr ConstArrayView< T > & Arccore::ConstArrayView< T >::operator= ( const std::array< X, N > &  from)
inlineconstexpr

◆ operator[]()

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

i-ème élément du tableau.

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

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

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

◆ ptrAt()

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

Addresse du index-ème élément.

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

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

◆ rbegin()

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

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

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

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

◆ rend()

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

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

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

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

◆ setArray()

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

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

◆ size()

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

Nombre d'éléments du tableau.

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

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

Référencé par Arcane::mesh::ItemFamily::_compactFromParentFamily(), Arcane::mesh::FaceUniqueIdBuilder::_exchangeData(), Arcane::SimpleGridMeshPartitioner::_findPart(), Arcane::LimaMalippReaderT< ReaderWrapper >::_readMeshPart(), Arcane::mesh::ItemFamily::_updateItemsSharedFlag(), Arcane::TimeHistoryValueT< DataType >::arrayToWrite(), Arcane::StringArrayData::assignSerializedData(), Arcane::ArcaneCurveWriter::beginWrite(), Arcane::Bzip2DeflateService::compress(), Arcane::LZ4DeflateService::compress(), Arcane::RayTriangle3DIntersection::compute(), Arcane::BasicRayMeshIntersection::compute(), Arcane::BasicRayMeshIntersection::compute(), Arcane::BasicRayFaceIntersector::computeIntersection(), Arcane::VariableArrayT< T >::copyItemsMeanValues(), Arcane::Array2VariableT< T >::copyItemsMeanValues(), Arcane::VariableArrayT< T >::copyItemsMeanValues(), Arcane::mesh::ItemFamily::copyItemsMeanValues(), Arcane::Array2VariableT< T >::copyItemsValues(), Arcane::VariableArrayT< T >::copyItemsValues(), Arcane::mesh::ItemFamily::copyItemsValues(), Arcane::MultiDataSynchronizeBuffer::copyReceiveAsync(), Arcane::MultiDataSynchronizeBuffer::copySendAsync(), Arcane::mesh::ItemFamily::createGroup(), Arcane::Process::execute(), Arcane::FlexLMMng::featureInfo(), Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillFromArray(), Arcane::Materials::ItemMaterialVariableScalar< DataType >::fillToArray(), Arcane::ArcaneBasicCheckpointService::notifyBeginWrite(), Arcane::mesh::ItemFamily::notifyItemsOwnerChanged(), Arcane::XmfMeshReader::readMeshFromFile(), Arcane::ItemGroupImpl::removeSuppressedItems(), Arcane::MeshUtils::reorderNodesOfFace2(), Arcane::ConnectivityItemVector::resizeAndCopy(), Arccore::Array< T >::sample(), Arcane::Materials::MeshMaterialExchangeMng::ExchangeCellStep::serialize(), Arcane::ArcaneCurveWriter::writeCurve(), et Arcane::GnuplotTimeHistoryCurveWriter2::writeCurve().

◆ subConstView()

template<class T >
constexpr ConstArrayView< T > Arccore::ConstArrayView< 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é à cette taille, retournant éventuellement une vue vide.

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

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

◆ subPart()

template<class T >
constexpr ThatClass Arccore::ConstArrayView< T >::subPart ( 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é à cette taille, retournant éventuellement une vue vide.

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

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

◆ subPartInterval()

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

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

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

◆ subView()

template<class T >
constexpr ConstArrayView< T > Arccore::ConstArrayView< T >::subView ( 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é à cette taille, retournant éventuellement une vue vide.

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

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

Référencé par Arcane::Materials::ComponentItemVectorView::_subView(), Arccore::ConstArrayView< T >::subConstView(), et Arccore::ConstArrayView< T >::subPart().

◆ subViewInterval()

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

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

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

◆ unguardedBasePointer()

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

Pointeur sur la mémoire allouée.

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 749 du fichier arccore/src/base/arccore/base/ArrayView.h.

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

Documentation des fonctions amies et associées

◆ operator!=

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

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

◆ operator<<

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

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

◆ operator==

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

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

◆ SmallSpan< const T >

template<class T >
friend class SmallSpan< const T >
friend

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

◆ SmallSpan< T >

template<class T >
friend class SmallSpan< T >
friend

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

◆ Span< const T >

template<class T >
friend class Span< const T >
friend

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

◆ Span< T >

template<class T >
friend class Span< T >
friend

Définition à la ligne 516 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 :