Block-Structured AMR Software Framework
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Loading...
Searching...
No Matches
AMReX_EBFArrayBox.H
Go to the documentation of this file.
1#ifndef AMREX_EBFARRAYBOX_H_
2#define AMREX_EBFARRAYBOX_H_
3#include <AMReX_Config.H>
4
5#include <AMReX_FArrayBox.H>
6
7namespace amrex {
8
9class EBCellFlagFab;
10class EBFArrayBoxFactory;
11
13 : public FArrayBox
14{
15public:
17 explicit EBFArrayBox (Arena* ar);
18 EBFArrayBox (const EBCellFlagFab& ebflag, const Box& bx, int ncomps, Arena* ar,
19 const EBFArrayBoxFactory* factory=nullptr, int box_index=-1);
20 EBFArrayBox (EBFArrayBox const& rhs, MakeType make_type, int scomp, int ncomp);
21
22 EBFArrayBox (EBFArrayBox&& rhs) noexcept = default;
23 EBFArrayBox (const EBFArrayBox&) = delete;
26
27 ~EBFArrayBox () override;
28
30 [[nodiscard]] const EBCellFlagFab& getEBCellFlagFab () const { return *m_ebcellflag; }
31
34 [[nodiscard]] const FArrayBox* getLevelSetData () const;
35
38 [[nodiscard]] const FArrayBox* getVolFracData () const;
39
42 [[nodiscard]] const FArrayBox* getCentroidData () const;
43
46 [[nodiscard]] const FArrayBox* getBndryCentData () const;
47
50 [[nodiscard]] const FArrayBox* getBndryNormalData () const;
51
54 [[nodiscard]] const FArrayBox* getBndryAreaData () const;
55
59
63
67
68private:
69 const EBCellFlagFab* m_ebcellflag = nullptr;
70 const EBFArrayBoxFactory* m_factory = nullptr;
71 int m_box_index = -1;
72};
73
74const EBCellFlagFab& getEBCellFlagFab (const FArrayBox& fab);
75
76}
77
78#endif
A virtual base class for objects that manage their own dynamic memory allocation.
Definition AMReX_Arena.H:100
Definition AMReX_EBCellFlag.H:287
Definition AMReX_EBFabFactory.H:24
Definition AMReX_EBFArrayBox.H:14
EBFArrayBox(const EBFArrayBox &)=delete
EBFArrayBox & operator=(const EBFArrayBox &)=delete
const FArrayBox * getBndryNormalData() const
Definition AMReX_EBFArrayBox.cpp:93
Array< const FArrayBox *, AMREX_SPACEDIM > getAreaFracData() const
Definition AMReX_EBFArrayBox.cpp:123
~EBFArrayBox() override
const FArrayBox * getVolFracData() const
Definition AMReX_EBFArrayBox.cpp:52
EBFArrayBox(EBFArrayBox &&rhs) noexcept=default
const FArrayBox * getCentroidData() const
Definition AMReX_EBFArrayBox.cpp:63
const EBCellFlagFab & getEBCellFlagFab() const
Get EBCellFlag Fab.
Definition AMReX_EBFArrayBox.H:30
const FArrayBox * getBndryAreaData() const
Definition AMReX_EBFArrayBox.cpp:108
Array< const FArrayBox *, AMREX_SPACEDIM > getEdgeCentData() const
Definition AMReX_EBFArrayBox.cpp:157
const FArrayBox * getBndryCentData() const
Definition AMReX_EBFArrayBox.cpp:78
const EBCellFlagFab * m_ebcellflag
Definition AMReX_EBFArrayBox.H:69
int m_box_index
Definition AMReX_EBFArrayBox.H:71
const EBFArrayBoxFactory * m_factory
Definition AMReX_EBFArrayBox.H:70
const FArrayBox * getLevelSetData() const
Definition AMReX_EBFArrayBox.cpp:41
Array< const FArrayBox *, AMREX_SPACEDIM > getFaceCentData() const
Definition AMReX_EBFArrayBox.cpp:140
A Fortran Array of REALs.
Definition AMReX_FArrayBox.H:229
Definition AMReX_Amr.cpp:49
MakeType
Definition AMReX_MakeType.H:7
const EBCellFlagFab & getEBCellFlagFab(const FArrayBox &fab)
Definition AMReX_EBFArrayBox.cpp:174
std::array< T, N > Array
Definition AMReX_Array.H:24