Classe de base interne pour les tableaux. Plus de détails...
#include <arccore/collections/Array.h>
Dérivée par Arccore::AbstractArray< PrivatePartType * >, Arccore::AbstractArray< ContainerViewType >, Arccore::AbstractArray< XmlNode >, Arccore::AbstractArray< DataType >, Arccore::AbstractArray< ItemInternal * >, Arccore::AbstractArray< Cell >, Arccore::AbstractArray< Ref< Arcane::Accelerator::RunQueue > >, Arccore::AbstractArray< Arcane::Accelerator::RunQueue >, Arccore::AbstractArray< Arcane::Accelerator::DeviceInfo >, Arccore::AbstractArray< std::byte >, Arccore::AbstractArray< Int32 >, Arccore::AbstractArray< Arcane::ApplicationBuildInfo::Impl::NameValuePair >, Arccore::AbstractArray< OutputType >, Arccore::AbstractArray< Arcane::AxlOptionsBuilder::OneOption >, Arccore::AbstractArray< Int64 >, Arccore::AbstractArray< CartesianConnectivity::Index >, Arccore::AbstractArray< CartesianConnectivity::Permutation >, Arccore::AbstractArray< Arcane::ItemGroupT >, Arccore::AbstractArray< Ref< CartesianMeshPatch > >, Arccore::AbstractArray< Arcane::ICartesianMeshPatch * >, Arccore::AbstractArray< Arcane::ICaseOptionList * >, Arccore::AbstractArray< Arccore::String >, Arccore::AbstractArray< Arccore::ReferenceCounter< Arcane::ICaseOptions > >, Arccore::AbstractArray< InterfaceType * >, Arccore::AbstractArray< Ref< InterfaceType > >, Arccore::AbstractArray< Arcane::SmallVariant >, Arccore::AbstractArray< SmallVariant >, Arccore::AbstractArray< Arcane::impl::CartesianItemDirectionInfo >, Arccore::AbstractArray< Real >, Arccore::AbstractArray< Arcane::DependencyInjection::Injector::Impl::InstanceInfo >, Arccore::AbstractArray< Ref< impl::IInstanceFactory > >, Arccore::AbstractArray< Ref< IInstanceFactory > >, Arccore::AbstractArray< Arcane::EventObserverBase * >, Arccore::AbstractArray< Byte >, Arccore::AbstractArray< KeyTypeValue >, Arccore::AbstractArray< Arcane::HashTableBaseT::HashData * >, Arccore::AbstractArray< Arccore::UniqueArray * >, Arccore::AbstractArray< Arcane::HashTableMapT::Data * >, Arccore::AbstractArray< Arcane::Hdf5VariableReaderHelper * >, Arccore::AbstractArray< Arcane::Hdf5VariableInfoBase * >, Arccore::AbstractArray< Arcane::Hdf5VariableReaderHelper::TimeVariableInfoBase * >, Arccore::AbstractArray< Arcane::IVariable * >, Arccore::AbstractArray< Arcane::Hdf5VariableReaderHelper2::TimeVariableInfoBase * >, Arccore::AbstractArray< TimePathPair >, Arccore::AbstractArray< Arcane::Hdf5VariableWriterHelper * >, Arccore::AbstractArray< Arccore::ReferenceCounter< Arcane::Internal::IServiceFactory2 > >, Arccore::AbstractArray< Arcane::ItemAllocationInfo::FamilyInfo >, Arccore::AbstractArray< Arcane::ItemAllocationInfo::ConnectedFamilyInfo >, Arccore::AbstractArray< Arcane::ItemTypeInfo * >, Arccore::AbstractArray< Integer >, Arccore::AbstractArray< String >, Arccore::AbstractArray< Arccore::Span< Arcane::Materials::ComponentItemLocalId > >, Arccore::AbstractArray< Arcane::Materials::ComponentItemLocalId >, Arccore::AbstractArray< Int16 >, Arccore::AbstractArray< Arcane::Materials::MeshEnvironmentBuildInfo::MatInfo >, Arccore::AbstractArray< Arcane::Materials::IMeshMaterialVariable * >, Arccore::AbstractArray< Arccore::Span< std::byte > >, Arccore::AbstractArray< Arcane::Materials::MeshMaterialVariable * >, Arccore::AbstractArray< Arccore::MessagePassing::Request >, Arccore::AbstractArray< Arcane::Materials::MultiBufferMeshMaterialSynchronizeBuffer::BufferInfo >, Arccore::AbstractArray< Arcane::Materials::OneBufferMeshMaterialSynchronizeBuffer::BufferInfo >, Arccore::AbstractArray< Arcane::Materials::IMeshEnvironment * >, Arccore::AbstractArray< Ref< Arcane::IMeshReader > >, Arccore::AbstractArray< Arcane::ITimeLoopService * >, Arccore::AbstractArray< ItemDirectionInfo >, Arccore::AbstractArray< Arcane::IObserver * >, Arccore::AbstractArray< KeyType >, Arccore::AbstractArray< Arccore::SharedArray< Arcane::ItemLocalId > >, Arccore::AbstractArray< Arcane::ItemLocalId >, Arccore::AbstractArray< Arcane::ParameterList::Impl::NameValuePair >, Arccore::AbstractArray< Arcane::IPropertyType * >, Arccore::AbstractArray< bool >, Arccore::AbstractArray< TestFuncInfo >, Arccore::AbstractArray< Arcane::VariableDiff::DiffInfo >, Arccore::AbstractArray< Arcane::VariableDependInfo >, Arccore::AbstractArray< CompareStatus >, Arccore::AbstractArray< MPI_Status >, Arccore::AbstractArray< Arccore::MessagePassing::Mpi::MpiSerializeDispatcher::SerializeSubRequest * >, Arccore::AbstractArray< Arccore::MessagePassing::internal::BasicSerializeMessage * >, Arccore::AbstractArray< Arccore::MessagePassing::Mpi::MpiSerializeMessageRequest >, Arccore::AbstractArray< Ref< Arccore::MessagePassing::ISerializeMessage > >, Arccore::AbstractArray< BasicSerializeMessage * >, Arccore::AbstractArray< ProbeInfo >, Arccore::AbstractArray< Arcane::Node >, et Arccore::AbstractArray< T >.
Fonctions membres publiques | |
IMemoryAllocator * | allocator () 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é) | |
Fonctions membres protégées | |
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 protégées statiques | |
static constexpr RunQueue * | _nullRunQueue () |
Méthode explicite pour une RunQueue nulle. | |
Attributs protégés | |
ArrayMetaData * | m_md = nullptr |
ArrayMetaData | m_meta_data |
Classe de base interne pour les tableaux.
Cette classe gère uniquement les meta-données pour les tableaux comme le nombre d'éléments ou la capacité.
m_md est un pointeur contenant les meta-donné du tableau. Si le tableau est partagé (SharedArray, SharedArray2), alors ce pointeur est alloué dynamiquement et dans ce cas _isUseOwnMetaData() doit retourner false. Si le tableau n'est pas partagé (UniqueArray ou UniqueArray2), alors les meta-données sont conservées directement dans l'instance du tableau pour éviter des allocations inutiles et m_md pointe alors vers m_meta_data. Dans tous les cas, il ne faut pas utiliser m_meta_data directement, mais toujours passer par m_md.
Définition à la ligne 156 du fichier arccore/src/collections/arccore/collections/Array.h.
|
inline |
Définition à la ligne 160 du fichier arccore/src/collections/arccore/collections/Array.h.
|
inlineprotected |
Définition à la ligne 226 du fichier arccore/src/collections/arccore/collections/Array.h.
|
inlineprotected |
Définition à la ligne 251 du fichier arccore/src/collections/arccore/collections/Array.h.
|
inlineprotected |
Définition à la ligne 216 du fichier arccore/src/collections/arccore/collections/Array.h.
|
inlineprotected |
Définition à la ligne 243 du fichier arccore/src/collections/arccore/collections/Array.h.
|
inlineprotectedvirtual |
Indique si m_md fait référence à m_meta_data.
C'est le cas pour les UniqueArray et UniqueArray2 mais pas pour les SharedArray et SharedArray2.
Réimplémentée dans Arccore::SharedArray< T >, Arccore::SharedArray< Arcane::ItemLocalId >, Arccore::SharedArray< DataType >, Arccore::SharedArray< Int32 >, Arccore::SharedArray< Int64 >, Arccore::SharedArray< Integer >, Arccore::SharedArray< Real >, Arccore::SharedArray< XmlNode >, et Arccore::SharedArray2< T >.
Définition à la ligne 201 du fichier arccore/src/collections/arccore/collections/Array.h.
|
inlinestaticconstexprprotected |
Méthode explicite pour une RunQueue nulle.
Définition à la ligne 193 du fichier arccore/src/collections/arccore/collections/Array.h.
Référencé par Arccore::AbstractArray< T >::_checkFreeMemory(), Arccore::AbstractArray< T >::_initFromSpan(), et Arccore::AbstractArray< T >::_move().
|
inlineprotected |
Définition à la ligne 208 du fichier arccore/src/collections/arccore/collections/Array.h.
|
inline |
Définition à la ligne 172 du fichier arccore/src/collections/arccore/collections/Array.h.
|
inline |
Définition à la ligne 168 du fichier arccore/src/collections/arccore/collections/Array.h.
String Arccore::AbstractArrayBase::debugName | ( | ) | const |
Nom de debug (nul si aucun nom spécifié)
Définition à la ligne 274 du fichier arccore/src/collections/arccore/collections/Array.cc.
Références Arccore::ArrayMetaData::allocation_options.
void Arccore::AbstractArrayBase::setDebugName | ( | const String & | name | ) |
Positionne le nom du tableau pour les informations de debug.
Ce nom peut être utilisé par exemple pour les affichages listing.
Définition à la ligne 265 du fichier arccore/src/collections/arccore/collections/Array.cc.
Références Arccore::ArrayMetaData::allocation_options.
|
protected |
Définition à la ligne 187 du fichier arccore/src/collections/arccore/collections/Array.h.
|
protected |
Définition à la ligne 188 du fichier arccore/src/collections/arccore/collections/Array.h.