24#ifndef SUPER_INDICATOR_BASE_F_3D_HH
25#define SUPER_INDICATOR_BASE_F_3D_HH
36 _superGeometry(geometry)
42 OLB_ASSERT(iCloc <
int(this->_blockF.size()) && iCloc >= 0,
43 "block functor index within bounds");
52 return this->_superGeometry;
60 output = _cachedData->
getBlock(input[0]).get(input+1);
63 this->operator()(&output, input);
73 output = _cachedData->getBlock(iC).get({iX, iY, iZ});
76 this->operator()(&output, iC, iX, iY, iZ);
84 _cachedData = std::unique_ptr<SuperData<3,T,bool>>(
86 for (
unsigned iC = 0; iC < this->_blockF.size(); ++iC) {
87 getBlockIndicatorF(iC).setCache(_cachedData->getBlock(iC));
Base block indicator functor.
represents all functors that operate on a SuperStructure<T,3> in general
Representation of a statistic for a parallel 2D geometry.
BLOCK & getBlock(int locIC)
Read and write access to a single extended block geometry.
SuperIndicatorF3D(SuperGeometry< T, 3 > &geometry)
bool operator()(const int input[])
Indicator specific function operator overload.
void cache()
Optional: initialize _cachedData for faster access.
BlockIndicatorF3D< T > & getBlockIndicatorF(int iCloc)
Get block indicator.
SuperGeometry< T, 3 > & getSuperGeometry()
Get underlying super geometry.
Top level namespace for all of OpenLB.
#define OLB_ASSERT(COND, MESSAGE)
Representation of a parallel 2D geometry – header file.