Arcane  v3.14.10.0
Documentation développeur
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>

+ Graphe d'héritage de Arcane::SimdItemBase:
+ Graphe de collaboration de Arcane::SimdItemBase:

Types publics

typedef SimdInfo::SimdInt32IndexType SimdIndexType
 

Fonctions membres publiques

 SimdItemBase (const ItemInternalPtr *items, const SimdIndexType *ids)
 Construit une instance.
 
ItemInternalitem (Integer si) const
 Partie interne (pour usage interne uniquement)
 
ItemInternaloperator[] (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 ItemInternalItemInternalPtr
 

Fonctions membres protégées

 SimdItemBase (ItemSharedInfo *shared_info, const SimdIndexType *ids)
 

Attributs protégés

SimdIndexType m_simd_local_ids
 
ItemSharedInfom_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

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

◆ SimdIndexType

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.

◆ 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.

◆ 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(), Arcane::SimdItemT< ItemType >::item(), Arcane::SimdItem::operator[](), et Arcane::SimdItemT< ItemType >::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 :