63 virtual void build() = 0;
147 virtual void sendItems(
Integer nb_particle_finish_exchange,
152 virtual bool waitMessages(
Integer nb_pending_particle,
Interface of an asynchronous particle exchanger.
Interface of a particle exchanger.
virtual void addNewParticles(Integer nb_particle)=0
Adds nb_particle to the current exchange.
virtual void setVerboseLevel(Integer level)=0
Sets the verbosity level (0 for no messages).
virtual Integer verboseLevel() const =0
Verbosity level.
virtual IAsyncParticleExchanger * asyncParticleExchanger()=0
Asynchronism management (returns nullptr if functionality is not available).
virtual IItemFamily * itemFamily()=0
Associated family.
virtual void initialize(IItemFamily *item_family)=0
Initializes the exchanger for the item_family item_family.
virtual void beginNewExchange(Integer nb_particle)=0
Starts a new particle exchange.
virtual ~IParticleExchanger()=default
Releases resources.
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
Exchanges particles between sub-domains.
virtual bool exchangeItems(Integer nb_particle_finish_exchange, Int32ConstArrayView local_ids, Int32ConstArrayView ranks_to_send, Int32Array *new_particle_local_ids, IFunctor *wait_functor)=0
Exchanges particles between sub-domains.