waLBerla 7.3
Loading...
Searching...
No Matches
walberla::field::BlockDataHandling< Field_T, Pseudo2D > Class Template Referenceabstract

#include <BlockDataHandling.h>

Inheritance diagram for walberla::field::BlockDataHandling< Field_T, Pseudo2D >:

Classes

struct  Merge
struct  Merge< Vector2< T > >
struct  Merge< Vector3< T > >

Public Types

using Value_T = typename Field_T::value_type
using InitializationFunction_T = std::function<void (Field_T *, IBlock *const)>
Public Types inherited from walberla::domain_decomposition::BlockDataHandling< Field_T >
using value_type

Public Member Functions

 ~BlockDataHandling () override=default
void addInitializationFunction (const InitializationFunction_T &initFunction)
void serializeGhostLayers (const bool serializeGhostLayers)
bool serializeGhostLayers () const
Field_T * initialize (IBlock *const block) override
 must be thread-safe !
void serialize (IBlock *const block, const BlockDataID &id, mpi::SendBuffer &buffer) override
 must be thread-safe !
void serializeCoarseToFine (Block *const block, const BlockDataID &id, mpi::SendBuffer &buffer, const uint_t child) override
 must be thread-safe !
void serializeFineToCoarse (Block *const block, const BlockDataID &id, mpi::SendBuffer &buffer) override
 must be thread-safe !
Field_T * deserialize (IBlock *const block) override
 must be thread-safe !
Field_T * deserializeCoarseToFine (Block *const block) override
 must be thread-safe !
Field_T * deserializeFineToCoarse (Block *const block) override
 must be thread-safe !
void deserialize (IBlock *const block, const BlockDataID &id, mpi::RecvBuffer &buffer) override
void deserializeCoarseToFine (Block *const block, const BlockDataID &id, mpi::RecvBuffer &buffer) override
void deserializeFineToCoarse (Block *const block, const BlockDataID &id, mpi::RecvBuffer &buffer, const uint_t child) override
Public Member Functions inherited from walberla::blockforest::BlockDataHandling< Field_T >
 ~BlockDataHandling () override=default

Protected Member Functions

virtual Field_T * allocate (IBlock *const block)=0
 must be thread-safe !
virtual Field_T * reallocate (IBlock *const block)=0
 must be thread-safe !
void sizeCheck (const uint_t xSize, const uint_t ySize, const uint_t zSize)

Protected Attributes

InitializationFunction_T initFunction_
bool serializeGhostLayers_ { true }

Member Typedef Documentation

◆ InitializationFunction_T

template<typename Field_T, bool Pseudo2D = false>
using walberla::field::BlockDataHandling< Field_T, Pseudo2D >::InitializationFunction_T = std::function<void (Field_T *, IBlock *const)>

◆ Value_T

template<typename Field_T, bool Pseudo2D = false>
using walberla::field::BlockDataHandling< Field_T, Pseudo2D >::Value_T = typename Field_T::value_type

Constructor & Destructor Documentation

◆ ~BlockDataHandling()

template<typename Field_T, bool Pseudo2D = false>
walberla::field::BlockDataHandling< Field_T, Pseudo2D >::~BlockDataHandling ( )
overridevirtualdefault

Member Function Documentation

◆ addInitializationFunction()

template<typename Field_T, bool Pseudo2D = false>
void walberla::field::BlockDataHandling< Field_T, Pseudo2D >::addInitializationFunction ( const InitializationFunction_T & initFunction)
inline

◆ allocate()

◆ deserialize() [1/2]

template<typename Field_T, bool Pseudo2D = false>
Field_T * walberla::field::BlockDataHandling< Field_T, Pseudo2D >::deserialize ( IBlock *const block)
inlineoverridevirtual

◆ deserialize() [2/2]

template<typename Field_T, bool Pseudo2D>
void walberla::field::BlockDataHandling< Field_T, Pseudo2D >::deserialize ( IBlock *const block,
const BlockDataID & id,
mpi::RecvBuffer & buffer )
inlineoverride

◆ deserializeCoarseToFine() [1/2]

template<typename Field_T, bool Pseudo2D = false>
Field_T * walberla::field::BlockDataHandling< Field_T, Pseudo2D >::deserializeCoarseToFine ( Block *const block)
inlineoverridevirtual

must be thread-safe !

Implements walberla::blockforest::BlockDataHandling< Field_T >.

◆ deserializeCoarseToFine() [2/2]

template<typename Field_T, bool Pseudo2D>
void walberla::field::BlockDataHandling< Field_T, Pseudo2D >::deserializeCoarseToFine ( Block *const block,
const BlockDataID & id,
mpi::RecvBuffer & buffer )
override

◆ deserializeFineToCoarse() [1/2]

template<typename Field_T, bool Pseudo2D = false>
Field_T * walberla::field::BlockDataHandling< Field_T, Pseudo2D >::deserializeFineToCoarse ( Block *const block)
inlineoverridevirtual

must be thread-safe !

Implements walberla::blockforest::BlockDataHandling< Field_T >.

◆ deserializeFineToCoarse() [2/2]

template<typename Field_T, bool Pseudo2D>
void walberla::field::BlockDataHandling< Field_T, Pseudo2D >::deserializeFineToCoarse ( Block *const block,
const BlockDataID & id,
mpi::RecvBuffer & buffer,
const uint_t child )
override

◆ initialize()

template<typename Field_T, bool Pseudo2D = false>
Field_T * walberla::field::BlockDataHandling< Field_T, Pseudo2D >::initialize ( IBlock *const block)
inlineoverridevirtual

◆ reallocate()

◆ serialize()

template<typename Field_T, bool Pseudo2D>
void walberla::field::BlockDataHandling< Field_T, Pseudo2D >::serialize ( IBlock *const block,
const BlockDataID & id,
mpi::SendBuffer & buffer )
inlineoverridevirtual

◆ serializeCoarseToFine()

template<typename Field_T, bool Pseudo2D>
void walberla::field::BlockDataHandling< Field_T, Pseudo2D >::serializeCoarseToFine ( Block *const block,
const BlockDataID & id,
mpi::SendBuffer & buffer,
const uint_t child )
overridevirtual

◆ serializeFineToCoarse()

template<typename Field_T, bool Pseudo2D>
void walberla::field::BlockDataHandling< Field_T, Pseudo2D >::serializeFineToCoarse ( Block *const block,
const BlockDataID & id,
mpi::SendBuffer & buffer )
overridevirtual

◆ serializeGhostLayers() [1/2]

template<typename Field_T, bool Pseudo2D = false>
bool walberla::field::BlockDataHandling< Field_T, Pseudo2D >::serializeGhostLayers ( ) const
inline

◆ serializeGhostLayers() [2/2]

template<typename Field_T, bool Pseudo2D = false>
void walberla::field::BlockDataHandling< Field_T, Pseudo2D >::serializeGhostLayers ( const bool serializeGhostLayers)
inline

◆ sizeCheck()

template<typename Field_T, bool Pseudo2D = false>
void walberla::field::BlockDataHandling< Field_T, Pseudo2D >::sizeCheck ( const uint_t xSize,
const uint_t ySize,
const uint_t zSize )
inlineprotected

Member Data Documentation

◆ initFunction_

template<typename Field_T, bool Pseudo2D = false>
InitializationFunction_T walberla::field::BlockDataHandling< Field_T, Pseudo2D >::initFunction_
protected

◆ serializeGhostLayers_

template<typename Field_T, bool Pseudo2D = false>
bool walberla::field::BlockDataHandling< Field_T, Pseudo2D >::serializeGhostLayers_ { true }
protected

The documentation for this class was generated from the following file: