Interface d'un échangeur de particules asynchrone.
Interface d'un échangeur de particules.
virtual void addNewParticles(Integer nb_particle)=0
Ajoute nb_particle dans l'échange actuel.
virtual void setVerboseLevel(Integer level)=0
Positionne le niveau de verbosité (0 pour aucune message)
virtual bool waitMessages(Integer nb_pending_particle, Int32Array *new_particle_local_ids, IFunctor *functor)=0
virtual Integer verboseLevel() const =0
Niveau de verbosité
virtual IAsyncParticleExchanger * asyncParticleExchanger()=0
Gestion de l'asynchronisme (retourne nullptr si fonctionnalité non disponible)
virtual IItemFamily * itemFamily()=0
Famille associée.
virtual void initialize(IItemFamily *item_family)=0
Initialize l'échangeur pour la familly item_family.
virtual void beginNewExchange(Integer nb_particle)=0
Commence un nouvel échange de particules.
virtual void sendItems(Integer nb_particle_finish_exchange, Int32ConstArrayView local_ids, Int32ConstArrayView sub_domains_to_send)=0
virtual ARCANE_DEPRECATED bool exchangeItems(Integer nb_particle_finish_exchange, Int32ConstArrayView local_ids, Int32ConstArrayView sub_domains_to_send, ItemGroup item_group, IFunctor *wait_functor)=0
Échange des particules entre sous-domaines.
virtual bool exchangeItems(Integer nb_particle_finish_exchange, Int32ConstArrayView local_ids, Int32ConstArrayView ranks_to_send, Int32Array *new_particle_local_ids, IFunctor *wait_functor)=0
Échange des particules entre sous-domaines.