Arcane  4.2.1.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
Référence de la classe Arcane::SimdItemBase

Classe gérant un vecteur SIMD d'entité. Plus de détails...

#include <arcane/core/SimdItem.h>

Types publics

typedef SimdInfo::SimdInt32IndexType SimdIndexType

Fonctions membres publiques

 SimdItemBase (const ItemInternalPtr *items, const SimdIndexType *ids)
 Construit une instance.
ItemInternal * item (Integer si) const
 Partie interne (pour usage interne uniquement).
ItemInternal * operator[] (Integer si) const
const SimdIndexType &ARCANE_RESTRICT simdLocalIds () const
 Liste des numéros locaux des entités de l'instance.
const Int32 *ARCANE_RESTRICT localIds () const
 Liste des numéros locaux des entités de l'instance.
Int32 localId (Int32 index) const
 Numéro local de l'entité d'indice index.

Types protégés

typedef ItemInternal * ItemInternalPtr

Fonctions membres protégées

 SimdItemBase (ItemSharedInfo *shared_info, const SimdIndexType *ids)

Attributs protégés

SimdIndexType m_simd_local_ids
ItemSharedInfo * m_shared_info = ItemSharedInfo::nullInstance()

Description détaillée

Classe gérant un vecteur SIMD d'entité.

TODO:

  • Faire une version de SimdItem par taille de vecteur (2,4,8).
  • Utiliser un mask si possible.
  • aligned SimdItemBase
  • faire une version du constructeur de SimdItemBase sans (nb_valid) pour le cas ou le vecteur est complet.

Cette classe conserve N entités du maillage, N étant dépendant de la taille des registres SIMD et est vaut SimdInfo::Int32IndexSize.

Cette classe ne s'utilise pas directement. Il faut utiliser SimdItem ou SimdItemT

Définition à la ligne 66 du fichier SimdItem.h.

Documentation des définitions de type membres

◆ ItemInternalPtr

typedef ItemInternal* Arcane::SimdItemBase::ItemInternalPtr
protected

Définition à la ligne 70 du fichier SimdItem.h.

◆ SimdIndexType

typedef SimdInfo::SimdInt32IndexType Arcane::SimdItemBase::SimdIndexType

Définition à la ligne 74 du fichier SimdItem.h.

Documentation des constructeurs et destructeur

◆ SimdItemBase() [1/2]

Arcane::SimdItemBase::SimdItemBase ( const ItemInternalPtr * items,
const SimdIndexType * ids )
inline

Construit une instance.

Avertissement
ids doit avoir l'alignement requis pour un SimdIndexType.

Définition à la ligne 83 du fichier SimdItem.h.

Références SimdItemBase().

Référencé par SimdItemBase().

◆ SimdItemBase() [2/2]

Arcane::SimdItemBase::SimdItemBase ( ItemSharedInfo * shared_info,
const SimdIndexType * ids )
inlineprotected

Définition à la ligne 88 du fichier SimdItem.h.

Documentation des fonctions membres

◆ item()

ItemInternal * Arcane::SimdItemBase::item ( Integer si) const
inline

Partie interne (pour usage interne uniquement).

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

Références item(), et localId().

Référencé par item().

◆ localId()

Int32 Arcane::SimdItemBase::localId ( Int32 index) const
inline

Numéro local de l'entité d'indice index.

Définition à la ligne 107 du fichier SimdItem.h.

Référencé par Arcane::SimdItem::item(), item(), Arcane::SimdItemT< Node >::item(), Arcane::SimdItem::operator[](), et Arcane::SimdItemT< Node >::operator[]().

◆ localIds()

const Int32 *ARCANE_RESTRICT Arcane::SimdItemBase::localIds ( ) const
inline

Liste des numéros locaux des entités de l'instance.

Définition à la ligne 104 du fichier SimdItem.h.

◆ operator[]()

ItemInternal * Arcane::SimdItemBase::operator[] ( Integer si) const
inline

Définition à la ligne 98 du fichier SimdItem.h.

◆ simdLocalIds()

const SimdIndexType &ARCANE_RESTRICT Arcane::SimdItemBase::simdLocalIds ( ) const
inline

Liste des numéros locaux des entités de l'instance.

Définition à la ligne 101 du fichier SimdItem.h.

Documentation des données membres

◆ m_shared_info

ItemSharedInfo* Arcane::SimdItemBase::m_shared_info = ItemSharedInfo::nullInstance()
protected

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

◆ m_simd_local_ids

SimdIndexType Arcane::SimdItemBase::m_simd_local_ids
protected

Définition à la ligne 111 du fichier SimdItem.h.


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