OpenLB 1.8.1
Loading...
Searching...
No Matches
olb::BlockRefinementContextD< T, DESCRIPTOR > Struct Template Referenceabstract

Interface for the contextual data of a block refinement. More...

#include <operator.h>

+ Inheritance diagram for olb::BlockRefinementContextD< T, DESCRIPTOR >:
+ Collaboration diagram for olb::BlockRefinementContextD< T, DESCRIPTOR >:

Public Types

using value_t = T
 
using descriptor_t = DESCRIPTOR
 
using Data = olb::BlockD<T,refinement::DATA_DESCRIPTOR<DESCRIPTOR>>
 

Public Member Functions

virtual Platform getPlatform () const =0
 
virtual void setProcessingContext (ProcessingContext context)=0
 
virtual Data & getData ()=0
 Return reference to contextual data.
 
virtual void add (LatticeR< DESCRIPTOR::d > latticeR)=0
 Connect the coarse and fine lattice at position latticeR.
 
virtual std::optional< std::size_t > getDataIndex (LatticeR< DESCRIPTOR::d > latticeR) const =0
 Return index where contextual data of connection point latticeR is stored.
 
virtual void apply (BlockRefinementOperatorPromise< T, DESCRIPTOR > &&promise)=0
 Apply promised algorithm step to the previously added connection points.
 
template<Platform PLATFORM>
auto & asConcrete ()
 

Detailed Description

template<typename T, typename DESCRIPTOR>
struct olb::BlockRefinementContextD< T, DESCRIPTOR >

Interface for the contextual data of a block refinement.

Definition at line 48 of file operator.h.

Member Typedef Documentation

◆ Data

template<typename T , typename DESCRIPTOR >
using olb::BlockRefinementContextD< T, DESCRIPTOR >::Data = olb::BlockD<T,refinement::DATA_DESCRIPTOR<DESCRIPTOR>>

Definition at line 52 of file operator.h.

◆ descriptor_t

template<typename T , typename DESCRIPTOR >
using olb::BlockRefinementContextD< T, DESCRIPTOR >::descriptor_t = DESCRIPTOR

Definition at line 50 of file operator.h.

◆ value_t

template<typename T , typename DESCRIPTOR >
using olb::BlockRefinementContextD< T, DESCRIPTOR >::value_t = T

Definition at line 49 of file operator.h.

Member Function Documentation

◆ add()

template<typename T , typename DESCRIPTOR >
virtual void olb::BlockRefinementContextD< T, DESCRIPTOR >::add ( LatticeR< DESCRIPTOR::d > latticeR)
pure virtual

Connect the coarse and fine lattice at position latticeR.

Implemented in olb::ConcreteBlockRefinementContextD< T, DESCRIPTOR, PLATFORM >.

◆ apply()

template<typename T , typename DESCRIPTOR >
virtual void olb::BlockRefinementContextD< T, DESCRIPTOR >::apply ( BlockRefinementOperatorPromise< T, DESCRIPTOR > && promise)
pure virtual

Apply promised algorithm step to the previously added connection points.

Scope of operator must match scope of context

Implemented in olb::ConcreteBlockRefinementContextD< T, DESCRIPTOR, PLATFORM >.

◆ asConcrete()

template<typename T , typename DESCRIPTOR >
template<Platform PLATFORM>
auto & olb::BlockRefinementContextD< T, DESCRIPTOR >::asConcrete ( )
inline

Definition at line 72 of file operator.h.

72 {
73 return static_cast<ConcreteBlockRefinementContextD<T,DESCRIPTOR,PLATFORM>&>(*this);
74 }

◆ getData()

template<typename T , typename DESCRIPTOR >
virtual Data & olb::BlockRefinementContextD< T, DESCRIPTOR >::getData ( )
pure virtual

Return reference to contextual data.

Implemented in olb::ConcreteBlockRefinementContextD< T, DESCRIPTOR, PLATFORM >.

+ Here is the caller graph for this function:

◆ getDataIndex()

template<typename T , typename DESCRIPTOR >
virtual std::optional< std::size_t > olb::BlockRefinementContextD< T, DESCRIPTOR >::getDataIndex ( LatticeR< DESCRIPTOR::d > latticeR) const
pure virtual

Return index where contextual data of connection point latticeR is stored.

Implemented in olb::ConcreteBlockRefinementContextD< T, DESCRIPTOR, PLATFORM >.

◆ getPlatform()

template<typename T , typename DESCRIPTOR >
virtual Platform olb::BlockRefinementContextD< T, DESCRIPTOR >::getPlatform ( ) const
pure virtual

◆ setProcessingContext()

template<typename T , typename DESCRIPTOR >
virtual void olb::BlockRefinementContextD< T, DESCRIPTOR >::setProcessingContext ( ProcessingContext context)
pure virtual

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