1#ifndef AMREX_MULTIMASK_H_
2#define AMREX_MULTIMASK_H_
3#include <AMReX_Config.H>
45 Orientation face,
int in_rad,
int out_rad,
int extent_rad,
int ncomp,
bool initval);
60 Orientation face,
int in_rad,
int out_rad,
int extent_rad,
int ncomp,
bool initval);
76 return m_fa.const_array(mfi);
89 int nComp () const noexcept {
return m_fa.nComp(); }
Logical mask type used to classify regions of FABs.
A collection of Boxes stored in an Array.
Definition AMReX_BoxArray.H:568
Calculates the distribution of FABs to MPI processes.
Definition AMReX_DistributionMapping.H:43
An Array of FortranArrayBox(FAB)-like Objects.
Definition AMReX_FabArray.H:349
Rectangular problem domain geometry.
Definition AMReX_Geometry.H:74
Iterator for looping ever tiles and boxes of amrex::FabArray based containers.
Definition AMReX_MFIter.H:85
std::unique_ptr< FabArrayBase > m_fa
This must be the first member!
Definition AMReX_MFIter.H:204
Definition AMReX_Mask.H:33
Iterator adapter exposing MFIter semantics for MultiMask traversal.
Definition AMReX_MultiMask.H:115
MultiMaskIter(const MultiMask &mm)
Definition AMReX_MultiMask.H:117
Definition AMReX_MultiMask.H:23
MultiMask(const MultiMask &rhs)=delete
MultiMask()
Construct an empty MultiMask; call define() before use.
Definition AMReX_MultiMask.H:26
Array4< int const > const_array(const MFIter &mfi) const noexcept
Return a const Array4 view for iterator mfi.
Definition AMReX_MultiMask.H:75
Array4< int > array(const MFIter &mfi) noexcept
Return an Array4 view (mutable) for iterator mfi.
Definition AMReX_MultiMask.H:72
int nComp() const noexcept
Number of components stored in each mask.
Definition AMReX_MultiMask.H:89
MultiArray4< int const > const_arrays() const noexcept
Return const multi-array views (alias of arrays()).
Definition AMReX_MultiMask.H:86
MultiArray4< int > arrays() noexcept
Return mutable multi-array views of every mask.
Definition AMReX_MultiMask.H:83
const DistributionMapping & DistributionMap() const noexcept
DistributionMapping describing mask ownership.
Definition AMReX_MultiMask.H:95
Array4< int const > array(const MFIter &mfi) const noexcept
Return an Array4 view (const) for iterator mfi.
Definition AMReX_MultiMask.H:69
static void Copy(MultiMask &dst, const MultiMask &src)
Copy multi-mask data from src into dst.
Definition AMReX_MultiMask.cpp:74
MultiMask & operator=(const MultiMask &rhs)=delete
MultiMask(MultiMask &&rhs) noexcept=default
Mask & operator[](const MFIter &mfi) noexcept
Mutable access to the mask referenced by iterator mfi.
Definition AMReX_MultiMask.H:63
MultiArray4< int const > arrays() const noexcept
Return const multi-array views of every mask.
Definition AMReX_MultiMask.H:80
const BoxArray & boxArray() const noexcept
BoxArray used to build this MultiMask.
Definition AMReX_MultiMask.H:92
void define(const BoxArray &ba, const DistributionMapping &dm, int ncomp)
Define masks over ba with mapping dm and ncomp components.
Definition AMReX_MultiMask.cpp:18
Encapsulation of the Orientation of the Faces of a Box.
Definition AMReX_Orientation.H:29
Definition AMReX_Amr.cpp:49
A multidimensional array accessor.
Definition AMReX_Array4.H:283
Definition AMReX_FabArray.H:153