template<class case_t>
AMR::marked_refinements_store_t class

This class stores the decisions made during the iterative AMR algorithm.

Contents

The template parameter determines the internal enum type.

Public functions

auto size() const -> std::size_t
auto data() -> std::unordered_map<size_t, case_t>&
auto exists(size_t id) -> bool
function to see if a given id has already had a refinement decision made
auto get(size_t id) -> case_t&
Accessor function to get a marked_refinement from the store.
void add(size_t id, case_t r)
Function to add a marked refinement to the store, which is context aware based on existing values.
auto get_state_changed() -> bool&
Accessor for variable which tracks state change.

Function documentation

template<class case_t>
std::size_t AMR::marked_refinements_store_t<case_t>::size() const

Returns Map of marked refinements

Const-ref access to number of tets

template<class case_t>
std::unordered_map<size_t, case_t>& AMR::marked_refinements_store_t<case_t>::data()

Returns Map of marked refinements

Non-const-ref access to state

template<class case_t>
bool AMR::marked_refinements_store_t<case_t>::exists(size_t id)

function to see if a given id has already had a refinement decision made

Parameters
id The tet_id to check
Returns A bool stating if a refinement decision/marking exists

template<class case_t>
case_t& AMR::marked_refinements_store_t<case_t>::get(size_t id)

Accessor function to get a marked_refinement from the store.

Parameters
id The id of the tet to fetch the marked_refinement for
Returns The marked refinement case for the given tet

template<class case_t>
void AMR::marked_refinements_store_t<case_t>::add(size_t id, case_t r)

Function to add a marked refinement to the store, which is context aware based on existing values.

Parameters
id The id of the tet to mark
r The refinement decision for the tet

template<class case_t>
bool& AMR::marked_refinements_store_t<case_t>::get_state_changed()

Accessor for variable which tracks state change.

Returns Bool stating is the state has changed