Alien  1.3.0
User documentation
Loading...
Searching...
No Matches
Alien::BasicIndexManager Class Reference

#include <core/alien/index_manager/functional/BasicIndexManager.h>

Classes

class  MyEntryImpl
 Squelette de l'implementation locale de Entry La vraie implémentation est MyAbstractEntryImpl. Cette classe permet de la factorisation de code. More...
struct  EntrySendRequest
struct  EntryRecvRequest
class  MyEntryEnumeratorImpl

Public Member Functions

 BasicIndexManager (Alien::IMessagePassingMng *parallelMng)
 Constructeur de la classe.
 ~BasicIndexManager () override
 Destructeur de la classe.
void init () override
 Initialisation.
bool isPrepared () const override
 Indique si la phase de préparation est achevée.
void setTraceMng (Alien::ITraceMng *traceMng) override
 Définit le gestionnaire de trace.
void prepare () override
 Préparation : fixe l'indexation (fin des définitions).
void stats (Arccore::Integer &globalSize, Arccore::Integer &minLocalIndex, Arccore::Integer &localSize) const override
 Statistiques d'indexation.
Arccore::Integer globalSize () const override
 Retourne la taille globale.
Arccore::Integer minLocalIndex () const override
 Retourne l'indice minimum local.
Arccore::Integer localSize () const override
 Retourne l'indice minimum local.
EntryEnumerator enumerateEntry () const override
 Construction d'un enumerateur sur les Entry.
ScalarIndexSet buildScalarIndexSet (const Arccore::String &name, Arccore::IntegerConstArrayView localIds, const IIndexManager::IAbstractFamily &family) override
 Construit une nouvelle entrée scalaire sur un ensemble d'entités abstraites.
ScalarIndexSet buildScalarIndexSet (const Arccore::String &name, const IIndexManager::IAbstractFamily &family) override
VectorIndexSet buildVectorIndexSet (const Arccore::String &name, Arccore::IntegerConstArrayView localIds, const IIndexManager::IAbstractFamily &family, Arccore::Integer n) override
 Construit une nouvelle entrée vectoriellesur un ensemble d'entités abstraites.
VectorIndexSet buildVectorIndexSet (const Arccore::String &name, const IIndexManager::IAbstractFamily &family, Arccore::Integer n) override
Arccore::UniqueArray< Arccore::Integer > getIndexes (const ScalarIndexSet &entry) const override
 Fournit une table de translation indexé par les items.
Arccore::UniqueArray2< Arccore::Integer > getIndexes (const VectorIndexSet &entries) const override
Arccore::MessagePassing::IMessagePassingMng * parallelMng () const override
 Donne le gestionnaire parallèle ayant servi à l'indexation.
void setMaxNullIndexOpt (bool flag) override
 define null index : default = -1, if true null_index = max_index+1
Arccore::Integer nullIndex () const override
 return value of null index
void keepAlive (const IAbstractFamily *family) override
 Permet de gérer la mort d'une famille associée à l'index-manager.
Public Member Functions inherited from Alien::IIndexManager
 IIndexManager ()=default
 Constructeur par défaut.
virtual ~IIndexManager ()=default
 Destructeur.
virtual void setTraceMng (Arccore::ITraceMng *traceMng)=0
 Définit le gestionnaire de trace.
virtual ScalarIndexSet buildScalarIndexSet (const Arccore::String &name, Arccore::ConstArrayView< Arccore::Integer > localIds, const IAbstractFamily &family)=0
 Construit une nouvelle entrée scalaire sur des items du maillage.
virtual VectorIndexSet buildVectorIndexSet (const Arccore::String &name, Arccore::ConstArrayView< Arccore::Integer > localIds, const IAbstractFamily &family, Arccore::Integer n)=0
 Construit une nouvelle entrée vectorielle sur des items du maillage.

Additional Inherited Members

Public Types inherited from Alien::IIndexManager
typedef Entry ScalarIndexSet
typedef Arccore::UniqueArray< ScalarIndexSet > VectorIndexSet

Detailed Description

Definition at line 26 of file BasicIndexManager.h.

Constructor & Destructor Documentation

◆ BasicIndexManager()

Alien::BasicIndexManager::BasicIndexManager ( Alien::IMessagePassingMng * parallelMng)
explicit

Constructeur de la classe.

Definition at line 328 of file BasicIndexManager.cc.

References parallelMng().

◆ ~BasicIndexManager()

Alien::BasicIndexManager::~BasicIndexManager ( )
override

Destructeur de la classe.

Definition at line 338 of file BasicIndexManager.cc.

Member Function Documentation

◆ buildScalarIndexSet()

ScalarIndexSet Alien::BasicIndexManager::buildScalarIndexSet ( const Arccore::String & name,
const IIndexManager::IAbstractFamily & family )
overridevirtual

Construit une nouvelle entrée scalaire sur l'ensemble des entités d'une familles abstraite

Implements Alien::IIndexManager.

◆ buildVectorIndexSet() [1/2]

VectorIndexSet Alien::BasicIndexManager::buildVectorIndexSet ( const Arccore::String & name,
Arccore::IntegerConstArrayView localIds,
const IIndexManager::IAbstractFamily & family,
Arccore::Integer n )
override

Construit une nouvelle entrée vectoriellesur un ensemble d'entités abstraites.

L'implémentation actuelle considére le multi-scalaire comme du vectoriel

◆ buildVectorIndexSet() [2/2]

VectorIndexSet Alien::BasicIndexManager::buildVectorIndexSet ( const Arccore::String & name,
const IIndexManager::IAbstractFamily & family,
Arccore::Integer n )
overridevirtual

Construit une nouvelle entrée scalaire sur l'ensemble des entités d'une familles abstraite

L'implémentation actuelle considére le multi-scalaire comme du vectoriel

Implements Alien::IIndexManager.

References getIndexes().

◆ enumerateEntry()

IIndexManager::EntryEnumerator Alien::BasicIndexManager::enumerateEntry ( ) const
nodiscardoverridevirtual

Construction d'un enumerateur sur les Entry.

Implements Alien::IIndexManager.

Definition at line 1011 of file BasicIndexManager.cc.

◆ getIndexes() [1/2]

UniqueArray< Integer > Alien::BasicIndexManager::getIndexes ( const ScalarIndexSet & entry) const
nodiscardoverridevirtual

Fournit une table de translation indexé par les items.

Implements Alien::IIndexManager.

Definition at line 911 of file BasicIndexManager.cc.

References Alien::IIndexManager::Entry::internal(), Alien::IIndexManager::Entry::manager(), Alien::IIndexManager::IAbstractFamily::maxLocalId(), and nullIndex().

Referenced by buildVectorIndexSet().

◆ getIndexes() [2/2]

UniqueArray2< Integer > Alien::BasicIndexManager::getIndexes ( const VectorIndexSet & entries) const
nodiscardoverridevirtual

Fournit une table de translation vectorielle indexé par les items puis par les entrées

Implements Alien::IIndexManager.

Definition at line 932 of file BasicIndexManager.cc.

References Alien::BasicIndexManager::MyEntryImpl::getAllIndexes(), Alien::IIndexManager::IAbstractFamily::maxLocalId(), and nullIndex().

◆ globalSize()

Integer Alien::BasicIndexManager::globalSize ( ) const
nodiscardoverridevirtual

Retourne la taille globale.

Uniquement valide après prepare

Implements Alien::IIndexManager.

Definition at line 978 of file BasicIndexManager.cc.

Referenced by stats().

◆ init()

void Alien::BasicIndexManager::init ( )
overridevirtual

Initialisation.

Implements Alien::IIndexManager.

Definition at line 346 of file BasicIndexManager.cc.

◆ isPrepared()

bool Alien::BasicIndexManager::isPrepared ( ) const
inlinenodiscardoverridevirtual

Indique si la phase de préparation est achevée.

Implements Alien::IIndexManager.

Definition at line 39 of file BasicIndexManager.h.

◆ keepAlive()

void Alien::BasicIndexManager::keepAlive ( const IAbstractFamily * family)
overridevirtual

Permet de gérer la mort d'une famille associée à l'index-manager.

Méthode de bas niveau pour les implémentationsde IAbstractFamily, usuellement dans le desctructeur des implémentations extérieures de IAbstractFamily

Implements Alien::IIndexManager.

Definition at line 1091 of file BasicIndexManager.cc.

References Alien::IIndexManager::IAbstractFamily::clone(), and Alien::BasicIndexManager::MyEntryImpl::getFamily().

◆ localSize()

Integer Alien::BasicIndexManager::localSize ( ) const
nodiscardoverridevirtual

Retourne l'indice minimum local.

Uniquement valide après prepare

Implements Alien::IIndexManager.

Definition at line 1000 of file BasicIndexManager.cc.

Referenced by stats().

◆ minLocalIndex()

Integer Alien::BasicIndexManager::minLocalIndex ( ) const
nodiscardoverridevirtual

Retourne l'indice minimum local.

Uniquement valide après prepare

Implements Alien::IIndexManager.

Definition at line 989 of file BasicIndexManager.cc.

Referenced by stats().

◆ nullIndex()

Arccore::Integer Alien::BasicIndexManager::nullIndex ( ) const
inlinenodiscardoverridevirtual

return value of null index

Implements Alien::IIndexManager.

Definition at line 109 of file BasicIndexManager.h.

Referenced by getIndexes(), and getIndexes().

◆ parallelMng()

Arccore::MessagePassing::IMessagePassingMng * Alien::BasicIndexManager::parallelMng ( ) const
inlinenodiscardoverridevirtual

Donne le gestionnaire parallèle ayant servi à l'indexation.

Implements Alien::IIndexManager.

Definition at line 101 of file BasicIndexManager.h.

Referenced by BasicIndexManager().

◆ prepare()

void Alien::BasicIndexManager::prepare ( )
overridevirtual

Préparation : fixe l'indexation (fin des définitions).

< Table des index d'entrées (>=0:local, <0:global) en phase1

Implements Alien::IIndexManager.

Definition at line 453 of file BasicIndexManager.cc.

References Alien::BasicIndexManager::MyEntryImpl::getFamily(), Alien::BasicIndexManager::MyEntryImpl::getKind(), Alien::IIndexManager::IAbstractFamily::item(), Alien::IIndexManager::IAbstractFamily::owners(), and Alien::IIndexManager::IAbstractFamily::uids().

◆ setMaxNullIndexOpt()

void Alien::BasicIndexManager::setMaxNullIndexOpt ( bool flag)
inlineoverridevirtual

define null index : default = -1, if true null_index = max_index+1

Implements Alien::IIndexManager.

Definition at line 107 of file BasicIndexManager.h.

◆ setTraceMng()

void Alien::BasicIndexManager::setTraceMng ( Alien::ITraceMng * traceMng)
override

Définit le gestionnaire de trace.

Definition at line 375 of file BasicIndexManager.cc.

◆ stats()

void Alien::BasicIndexManager::stats ( Arccore::Integer & globalSize,
Arccore::Integer & minLocalIndex,
Arccore::Integer & localSize ) const
overridevirtual

Statistiques d'indexation.

Uniquement valide après prepare

Implements Alien::IIndexManager.

Definition at line 964 of file BasicIndexManager.cc.

References globalSize(), localSize(), and minLocalIndex().


The documentation for this class was generated from the following files: