35#ifndef Foam_distributedFieldMapper_H
36#define Foam_distributedFieldMapper_H
46template<
class DirectFieldMapperType>
class DistributedFieldMapper;
58template<
class DirectFieldMapperType>
61 public DirectFieldMapperType
86 DirectFieldMapperType(directAddr),
99 virtual label
size()
const
103 DirectFieldMapperType::hasDirectAddressing()
104 ? DirectFieldMapperType::size()
A templated field mapper with direct mapping from local or remote quantities.
virtual label size() const
DirectFieldMapperType mapper_type
The base direct mapper type.
virtual ~DistributedFieldMapper()=default
Destructor.
DistributedFieldMapper(const labelUList &directAddr, const mapDistributeBase &distMap)
Construct with addressing and distribute map.
virtual bool distributed() const
It is a distributed mapper.
virtual const mapDistributeBase & distributeMap() const
Return the distribution map.
Class containing processor-to-processor mapping information.
label constructSize() const noexcept
Constructed data size.
DistributedFieldMapper< directFieldMapper > distributedFieldMapper
A directFieldMapper with distributed (with local or remote) quantities.