Block-Structured AMR Software Framework
amrex::EB2::IndexSpaceImp< G > Class Template Reference

#include <AMReX_EB2.H>

Inheritance diagram for amrex::EB2::IndexSpaceImp< G >:
amrex::EB2::IndexSpace

Public Types

using F = typename G::FunctionType
 

Public Member Functions

 IndexSpaceImp (const G &gshop, const Geometry &geom, int required_coarsening_level, int max_coarsening_level, int ngrow, bool build_coarse_level_by_coarsening, bool extend_domain_face, int num_coarsen_opt)
 
 IndexSpaceImp (IndexSpaceImp< G > const &)=delete
 
 IndexSpaceImp (IndexSpaceImp< G > &&)=delete
 
void operator= (IndexSpaceImp< G > const &)=delete
 
void operator= (IndexSpaceImp< G > &&)=delete
 
 ~IndexSpaceImp () override=default
 
const LevelgetLevel (const Geometry &geom) const final
 
const GeometrygetGeometry (const Box &dom) const final
 
const BoxcoarsestDomain () const final
 
void addFineLevels (int num_new_fine_levels) final
 
void addRegularCoarseLevels (int num_new_coarse_levels) final
 
- Public Member Functions inherited from amrex::EB2::IndexSpace
virtual ~IndexSpace ()=default
 
 IndexSpace () noexcept=default
 
 IndexSpace (IndexSpace const &)=delete
 
 IndexSpace (IndexSpace &&)=delete
 
IndexSpaceoperator= (IndexSpace const &)=delete
 
IndexSpaceoperator= (IndexSpace &&)=delete
 

Private Attributes

m_gshop
 
bool m_build_coarse_level_by_coarsening
 
bool m_extend_domain_face
 
int m_num_coarsen_opt
 
Vector< GShopLevel< G > > m_gslevel
 
Vector< Geometrym_geom
 
Vector< Boxm_domain
 
Vector< intm_ngrow
 

Additional Inherited Members

- Static Public Member Functions inherited from amrex::EB2::IndexSpace
static void push (IndexSpace *ispace)
 
static void erase (IndexSpace *ispace)
 
static void pop () noexcept
 
static void clear () noexcept
 
static const IndexSpacetop ()
 
static bool empty () noexcept
 
static int size () noexcept
 
- Static Protected Attributes inherited from amrex::EB2::IndexSpace
static AMREX_EXPORT Vector< std::unique_ptr< IndexSpace > > m_instance
 

Member Typedef Documentation

◆ F

template<typename G >
using amrex::EB2::IndexSpaceImp< G >::F = typename G::FunctionType

Constructor & Destructor Documentation

◆ IndexSpaceImp() [1/3]

template<typename G >
IndexSpaceImp::IndexSpaceImp ( const G &  gshop,
const Geometry geom,
int  required_coarsening_level,
int  max_coarsening_level,
int  ngrow,
bool  build_coarse_level_by_coarsening,
bool  extend_domain_face,
int  num_coarsen_opt 
)

◆ IndexSpaceImp() [2/3]

template<typename G >
amrex::EB2::IndexSpaceImp< G >::IndexSpaceImp ( IndexSpaceImp< G > const &  )
delete

◆ IndexSpaceImp() [3/3]

template<typename G >
amrex::EB2::IndexSpaceImp< G >::IndexSpaceImp ( IndexSpaceImp< G > &&  )
delete

◆ ~IndexSpaceImp()

template<typename G >
amrex::EB2::IndexSpaceImp< G >::~IndexSpaceImp ( )
overridedefault

Member Function Documentation

◆ addFineLevels()

template<typename G >
void IndexSpaceImp::addFineLevels ( int  num_new_fine_levels)
finalvirtual

◆ addRegularCoarseLevels()

template<typename G >
void IndexSpaceImp::addRegularCoarseLevels ( int  num_new_coarse_levels)
finalvirtual

◆ coarsestDomain()

template<typename G >
const Box& amrex::EB2::IndexSpaceImp< G >::coarsestDomain ( ) const
inlinefinalvirtual

◆ getGeometry()

template<typename G >
const Geometry & IndexSpaceImp::getGeometry ( const Box dom) const
finalvirtual

◆ getLevel()

template<typename G >
const Level & IndexSpaceImp::getLevel ( const Geometry geom) const
finalvirtual

◆ operator=() [1/2]

template<typename G >
void amrex::EB2::IndexSpaceImp< G >::operator= ( IndexSpaceImp< G > &&  )
delete

◆ operator=() [2/2]

template<typename G >
void amrex::EB2::IndexSpaceImp< G >::operator= ( IndexSpaceImp< G > const &  )
delete

Member Data Documentation

◆ m_build_coarse_level_by_coarsening

template<typename G >
bool amrex::EB2::IndexSpaceImp< G >::m_build_coarse_level_by_coarsening
private

◆ m_domain

template<typename G >
Vector<Box> amrex::EB2::IndexSpaceImp< G >::m_domain
private

◆ m_extend_domain_face

template<typename G >
bool amrex::EB2::IndexSpaceImp< G >::m_extend_domain_face
private

◆ m_geom

template<typename G >
Vector<Geometry> amrex::EB2::IndexSpaceImp< G >::m_geom
private

◆ m_gshop

template<typename G >
G amrex::EB2::IndexSpaceImp< G >::m_gshop
private

◆ m_gslevel

template<typename G >
Vector<GShopLevel<G> > amrex::EB2::IndexSpaceImp< G >::m_gslevel
private

◆ m_ngrow

template<typename G >
Vector<int> amrex::EB2::IndexSpaceImp< G >::m_ngrow
private

◆ m_num_coarsen_opt

template<typename G >
int amrex::EB2::IndexSpaceImp< G >::m_num_coarsen_opt
private

The documentation for this class was generated from the following files: