13#ifndef ARCANE_IMPL_INTERNAL_VARIABLESYNCHRONIZERCOMPUTELIST_H
14#define ARCANE_IMPL_INTERNAL_VARIABLESYNCHRONIZERCOMPUTELIST_H
18#include "arcane/utils/TraceAccessor.h"
19#include "arcane/utils/Array.h"
21#include "arcane/core/ItemGroup.h"
37class ARCANE_IMPL_EXPORT VariableSynchronizerComputeList
45 explicit RankInfo(
Int32 arank)
51 Int32 rank()
const {
return m_rank; }
52 void setRank(
Int32 arank) { m_rank = arank; }
61 return m_rank < ar.m_rank;
66 Int32 m_rank = A_NULL_RANK;
74 GhostRankInfo() =
default;
75 explicit GhostRankInfo(
Int32 arank)
89 m_nb_item = local_ids.
size();
90 m_local_ids = local_ids;
93 Integer nbItem()
const {
return m_nb_item; }
94 void resize() { m_unique_ids.resize(m_nb_item); }
109 ShareRankInfo() =
default;
114 explicit ShareRankInfo(
Int32 arank)
123 m_nb_item = local_ids.
size();
124 m_local_ids = local_ids;
128 Integer nbItem()
const {
return m_nb_item; }
129 void resize() { m_unique_ids.resize(m_nb_item); }
152 bool m_is_verbose =
false;
153 bool m_is_debug =
false;
160 void _printSyncList();
Integer size() const
Number of elements in the vector.
Modifiable view of an array of type T.
Interface of the parallelism manager for a subdomain.
1D vector of data with reference semantics.
TraceAccessor(ITraceMng *m)
Constructs an accessor via the trace manager m.
1D data vector with value semantics (STL style).
bool operator<(const RankInfo &ar) const
Comparison operator. An instance is considered less than another if its associated subdomain is small...
void _createList(UniqueArray< SharedArray< Int32 > > &boundary_items)
void compute()
Creation of the synchronization element list.
Interface of a variable synchronization service.
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --
ArrayView< Int64 > Int64ArrayView
C equivalent of a 1D array of 64-bit integers.
Int32 Integer
Type representing an integer.
ConstArrayView< Int32 > Int32ConstArrayView
C equivalent of a 1D array of 32-bit integers.
std::int32_t Int32
Signed integer type of 32 bits.