13#ifndef CD_PETSCAMRCELL_H
14#define CD_PETSCAMRCELL_H
25#include <CD_NamespaceHeader.H>
43 PetscAMRCell() noexcept;
48 ~PetscAMRCell() noexcept;
53 PetscAMRCell(const PetscAMRCell&) = default;
58 PetscAMRCell(PetscAMRCell&&) = default;
64 operator=(const PetscAMRCell&) = default;
70 operator=(PetscAMRCell&&) = default;
83 define(const PetscInt a_petscRowPhase0,
84 const PetscInt a_petscRowPhase1,
85 const
bool a_isCoveredByFinerGrid,
86 const
bool a_isCoarCF,
87 const
bool a_isFineCF,
88 const
bool a_isGhostCF,
89 const
bool a_isDomainBoundaryCell) noexcept;
97 setPetscRow(const
int a_phase, const PetscInt a_row) noexcept;
104 setCoveredByFinerGrid(const
bool a_coveredByFinerGrid) noexcept;
111 setCoarCF(const
bool a_isCoarCF) noexcept;
118 setFineCF(const
bool a_isFineCF) noexcept;
125 setGhostCF(const
bool a_isGhostCF) noexcept;
132 setDomainBoundaryCell(const
bool a_isDomainBoundaryCell) noexcept;
138 getPetscRow(const
int a_iphase) const noexcept;
144 isCoveredByFinerGrid() const noexcept;
150 isCoarCF() const noexcept;
156 isFineCF() const noexcept;
162 isGhostCF() const noexcept;
168 isDomainBoundaryCell() const noexcept;
173 PetscInt m_petscRows[2];
178 bool m_isCoveredByFinerGrid;
198 bool m_isDomainBoundaryCell;
205linearSize(const PetscAMRCell& a_amrCell);
213linearIn(PetscAMRCell& a_amrCell, const
void* const a_buffer);
221linearOut(
void* const a_buffer, const PetscAMRCell& a_amrCell);
223#include <CD_NamespaceFooter.H>