Block-Structured AMR Software Framework
amrex::NonLocalBC::MapComponents< Base, Map > Struct Template Reference

This class takes a projection and a component map and combines them to form a new projection. More...

#include <AMReX_NonLocalBC.H>

Public Member Functions

template<typename T , typename = std::enable_if_t<IsCallable<Base, Array4<const T>, Dim3, int>::value>, typename = std::enable_if_t<IsCallableR<int, Map, int>::value>>
constexpr decltype(auto) operator() (Array4< const T > array, Dim3 i, int comp) const noexcept(noexcept(base(array, i, map(comp))))
 

Public Attributes

Base base
 
Map map
 

Detailed Description

template<typename Base, typename Map = Identity>
struct amrex::NonLocalBC::MapComponents< Base, Map >

This class takes a projection and a component map and combines them to form a new projection.

We use this to apply a permutations on components FABs.

See also
SwapComponents

Member Function Documentation

◆ operator()()

template<typename Base , typename Map = Identity>
template<typename T , typename = std::enable_if_t<IsCallable<Base, Array4<const T>, Dim3, int>::value>, typename = std::enable_if_t<IsCallableR<int, Map, int>::value>>
constexpr decltype(auto) amrex::NonLocalBC::MapComponents< Base, Map >::operator() ( Array4< const T >  array,
Dim3  i,
int  comp 
) const
inlineconstexprnoexcept

Member Data Documentation

◆ base

template<typename Base , typename Map = Identity>
Base amrex::NonLocalBC::MapComponents< Base, Map >::base

◆ map

template<typename Base , typename Map = Identity>
Map amrex::NonLocalBC::MapComponents< Base, Map >::map

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