44template<
unsigned D,
typename T,
typename U>
50 std::vector<std::unique_ptr<BlockData<D,T,U>>>
_block;
55 constexpr static unsigned d = D;
69 template <
typename BLOCK = BlockData<D,T,U>>
71 template <
typename BLOCK = BlockData<D,T,U>>
Base class for all LoadBalancer.
static constexpr unsigned d
const std::size_t _size
Dimension of the data field.
const BlockData< D, T, U > & getBlock(int iC) const
SuperData(CuboidGeometry< T, D > &cuboidGeometry, LoadBalancer< T > &loadBalancer, int overlap=2, int size=1)
void communicate() override
Communicate overlaps.
int getDataTypeSize() const
Read only access to the data type dim of the data of the super structure.
int getDataSize() const
Read only access to the dim of the data of the super structure.
std::unique_ptr< SuperCommunicator< T, SuperData > > _communicator
Inter-block communicator.
std::vector< std::unique_ptr< BlockData< D, T, U > > > _block
Vector of BlockData.
virtual ~SuperData()=default
Top level namespace for all of OpenLB.
std::conditional_t< D==2, SuperF2D< T, U >, SuperF3D< T, U > > SuperF
std::conditional_t< D==2, CuboidGeometry2D< T >, CuboidGeometry3D< T > > CuboidGeometry
Curried BlockData template for use in callUsingConcretePlatform.