12#ifndef ARCANE_CORE_IITEMFAMILYEXCHANGER_H
13#define ARCANE_CORE_IITEMFAMILYEXCHANGER_H
17#include "arcane/utils/List.h"
18#include "arcane/utils/TraceAccessor.h"
20#include "arcane/core/VariableCollection.h"
22#include "arcane/mesh/MeshGlobal.h"
83 virtual void computeExchangeItems() = 0;
97 virtual void releaseBuffer() = 0;
114 virtual void readAndAllocSubMeshItems() = 0;
115 virtual void readAndAllocItemRelations() = 0;
135 virtual void removeSentItems() = 0;
Constant view of an array of type T.
virtual void setParallelExchangerOption(const ParallelExchangerOptions &options)=0
Sets the options used during entity exchange.
virtual void processExchange()=0
Sends the exchange messages.
virtual void prepareToSend()=0
Prepares the sending structures.
virtual void readVariables()=0
After receiving messages, reads the variable values.
virtual void readGroups()=0
After receiving messages, reads the groups.
virtual IItemFamily * itemFamily()=0
Associated family.
virtual void finalizeExchange()=0
Finalizes the exchange.
virtual bool computeExchangeInfos()=0
Determines the information necessary for the exchanges.
virtual void setExchangeItems(ConstArrayView< std::set< Int32 > > items_to_send)=0
Positions the list of entities to exchange.
virtual void readAndAllocItems()=0
After receiving messages, reads and creates the transferred entities.
Interface of an entity family.
Options for IParallelMng::processExchange().
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --