Interface for a class of parallel operations on variables. More...
#include <arcane/core/parallel/VariableParallelOperationBase.h>
Public Member Functions | |
| VariableParallelOperationBase (IParallelMng *pm) | |
| virtual | ~VariableParallelOperationBase () |
| Frees resources. | |
| void | build () override |
| Constructs the instance. | |
| void | setItemFamily (IItemFamily *family) override |
| Positions the entity family on which the operation is to be performed. | |
| IItemFamily * | itemFamily () override |
| Entity family on which the operation is performed. | |
| void | addVariable (IVariable *variable) override |
| Adds a variable to the list of variables concerned by the operation. | |
| void | applyOperation (IDataOperation *operation) override |
| Applies the operation. | |
| Public Member Functions inherited from Arcane::TraceAccessor | |
| TraceAccessor (ITraceMng *m) | |
| Constructs an accessor via the trace manager m. | |
| TraceAccessor (const TraceAccessor &rhs) | |
| Copy constructor. | |
| TraceAccessor & | operator= (const TraceAccessor &rhs) |
| Copy assignment operator. | |
| virtual | ~TraceAccessor () |
| Frees resources. | |
| ITraceMng * | traceMng () const |
| Trace manager. | |
| TraceMessage | info () const |
| Flow for an information message. | |
| TraceMessage | pinfo () const |
| Flow for a parallel information message. | |
| TraceMessage | info (char category) const |
| Flow for an information message of a given category. | |
| TraceMessage | pinfo (char category) const |
| Flow for a parallel information message of a given category. | |
| TraceMessage | info (bool v) const |
| Flow for an information message. | |
| TraceMessage | warning () const |
| Flow for a warning message. | |
| TraceMessage | pwarning () const |
| TraceMessage | error () const |
| Flow for an error message. | |
| TraceMessage | perror () const |
| TraceMessage | log () const |
| Flow for a log message. | |
| TraceMessage | plog () const |
| Flow for a log message. | |
| TraceMessage | logdate () const |
| Flow for a log message preceded by the date. | |
| TraceMessage | fatal () const |
| Flow for a fatal error message. | |
| TraceMessage | pfatal () const |
| Flow for a parallel fatal error message. | |
| TraceMessageDbg | debug (Trace::eDebugLevel=Trace::Medium) const |
| Flow for a debug message. | |
| Trace::eDebugLevel | configDbgLevel () const |
| Debug level of the configuration file. | |
| TraceMessage | info (Int32 verbose_level) const |
| Flow for an information message of a given level. | |
| TraceMessage | linfo () const |
| Flow for an information message with the local information level of this instance. | |
| TraceMessage | linfo (Int32 relative_level) const |
| Flow for an information message with the local information level of this instance. | |
| void | fatalMessage (const StandaloneTraceMessage &o) const |
| Public Member Functions inherited from Arcane::IVariableParallelOperation | |
| virtual | ~IVariableParallelOperation ()=default |
| Releases resources. | |
Protected Member Functions | |
| Array< SharedArray< ItemLocalId > > & | _itemsToSend () |
| virtual void | _buildItemsToSend ()=0 |
| Protected Member Functions inherited from Arcane::TraceAccessor | |
| void | _setLocalVerboseLevel (Int32 v) |
| Int32 | _localVerboseLevel () const |
Interface for a class of parallel operations on variables.
These operations are collective.
Definition at line 41 of file VariableParallelOperationBase.h.
| Arcane::Parallel::VariableParallelOperationBase::VariableParallelOperationBase | ( | IParallelMng * | pm | ) |
Definition at line 44 of file VariableParallelOperationBase.cc.
|
inlinevirtual |
Frees resources.
Definition at line 48 of file VariableParallelOperationBase.h.
|
protectedpure virtual |
Implemented in Arcane::Parallel::GhostItemsVariableParallelOperation.
|
inlineprotected |
Definition at line 63 of file VariableParallelOperationBase.h.
|
overridevirtual |
Adds a variable to the list of variables concerned by the operation.
Implements Arcane::IVariableParallelOperation.
Definition at line 75 of file VariableParallelOperationBase.cc.
References ARCANE_FATAL, Arcane::ItemGroup::itemFamily(), and Arcane::IVariable::itemGroup().
|
overridevirtual |
Applies the operation.
Implements Arcane::IVariableParallelOperation.
Definition at line 88 of file VariableParallelOperationBase.cc.
References Arcane::ISerializer::allocateBuffer(), ARCANE_FATAL, Arcane::IParallelMng::commSize(), Arcane::ParallelMngUtils::createExchangerRef(), Arcane::TraceAccessor::debug(), Arcane::MessagePassing::ISerializeMessage::destination(), Arcane::ISerializer::getInt64(), Arcane::ISerializer::getSpan(), Arcane::Trace::High, Arcane::Trace::Highest, itemFamily(), Arcane::Item::localId(), Arcane::ISerializer::ModePut, Arcane::IVariable::name(), Arcane::ISerializer::putInt64(), Arcane::ISerializer::putSpan(), Arcane::Array< T >::reserve(), Arcane::ISerializer::reserveInt64(), Arcane::ISerializer::reserveSpan(), Arcane::Array< T >::resize(), Arcane::IVariable::serialize(), Arcane::MessagePassing::ISerializeMessage::serializer(), Arcane::ISerializer::setMode(), Arcane::ConstArrayView< T >::size(), Arcane::Item::uniqueId(), and Arcane::MessagePassing::MessageRank::value().
|
inlineoverridevirtual |
Constructs the instance.
Implements Arcane::IVariableParallelOperation.
Definition at line 52 of file VariableParallelOperationBase.h.
|
overridevirtual |
Entity family on which the operation is performed.
Implements Arcane::IVariableParallelOperation.
Definition at line 66 of file VariableParallelOperationBase.cc.
Referenced by Arcane::Parallel::GhostItemsVariableParallelOperation::_buildItemsToSend(), and applyOperation().
|
overridevirtual |
Positions the entity family on which the operation is to be performed.
The family must be positioned before adding variables. It can only be done once.
Implements Arcane::IVariableParallelOperation.
Definition at line 55 of file VariableParallelOperationBase.cc.
References ARCANE_FATAL.