21 #ifndef FUB_AMREX_FOR_EACH_FAB_HPP
22 #define FUB_AMREX_FOR_EACH_FAB_HPP
26 #include <AMReX_MultiFab.H>
33 template <
typename Tag,
typename F>
34 void ForEachFab(Tag, const ::amrex::FabArrayBase& fabarray, F
function) {
35 for (::amrex::MFIter mfi(fabarray); mfi.isValid(); ++mfi) {
40 template <
typename Tag,
typename F>
42 const ::amrex::DistributionMapping& dm, F
function) {
43 for (::amrex::MFIter mfi(ba, dm); mfi.isValid(); ++mfi) {
51 #if defined(_OPENMP) && defined(AMREX_USE_OMP)
54 for (::amrex::MFIter mfi(fabarray,
true); mfi.isValid(); ++mfi) {
61 const ::amrex::DistributionMapping& dm, F
function) {
62 #if defined(_OPENMP) && defined(AMREX_USE_OMP)
65 for (::amrex::MFIter mfi(ba, dm,
true); mfi.isValid(); ++mfi) {
77 void ForEachFab(const ::amrex::FabArrayBase& fabarray, F
function) {
83 const ::amrex::DistributionMapping& dm, F
function) {
89 const ::amrex::DistributionMapping& dm, F
function) {
void ForEachFab(Tag, const ::amrex::FabArrayBase &fabarray, F function)
Iterate through all local FArrayBox objects in a MultiFab.
Definition: ForEachFab.hpp:34
The amrex namespace.
Definition: AverageState.hpp:33
constexpr SequentialTag seq
Definition: Execution.hpp:31
constexpr OpenMpTag openmp
Definition: Execution.hpp:37
Definition: Execution.hpp:39
Definition: Execution.hpp:36