21 #include "SheafSystem/depth_bound_refinement_policy.h" 23 #include "SheafSystem/assert_contract.h" 24 #include "SheafSystem/factory.impl.h" 25 #include "SheafSystem/field_refinement_buffer.h" 26 #include "SheafSystem/field_vd.h" 100 fields::depth_bound_refinement_policy::
101 _has_prototype = make_prototype();
104 fields::depth_bound_refinement_policy::
190 static const string result(
"depth_bound_refinement_policy");
virtual bool invariant() const
Class invariant, intended to be redefined in each descendant. See below for template for invariant in...
static factory< field_refinement_policy > & policy_factory()
A factory for making policy objects.
size_type _refinement_depth_ub
The upper bound and the refinement level of a cell.
virtual bool invariant() const
Class invariant.
A buffer for data which is used by both a local_field_refiner object and its associated field_refinem...
Namespace for fields component of sheaf system.
virtual bool is_ancestor_of(const any *other) const
Conformance test; true if other conforms to this.
size_type refinement_depth_ub() const
The upper bound on the refinement depth of a cell. A cell will not be refined if its refinement depth...
virtual depth_bound_refinement_policy & operator=(const field_refinement_policy &xother)
Assignment operator.
Abstract base class with useful features for all objects.
A policy that determines a zone should be refined if the refinement depth is less than a given upper ...
unsigned long size_type
An unsigned integral type used to represent sizes and capacities.
An abstract policy that determines the conditions under which a zone should be refined.
virtual const std::string & class_name() const
The class name of this.
void disable_invariant_check() const
Disable invariant check. Intended for preventing recursive calls to invariant and for suppressing inv...
virtual depth_bound_refinement_policy * clone() const
Virtual constructor, makes a new instance of the same type as this.
field_vd & target
The field being refined.
bool same_evaluation() const
True if the coordinates and property sections both use the same evaluation subposet.
static const std::string & static_class_name()
The class name of this class.
bool invariant_check() const
True if invariant checking is enabled.
const field_vd & source
The reference field.
bool state_is_read_accessible() const
True if this is attached and if the coordinates and property are accessible for read or access contro...
virtual ~depth_bound_refinement_policy()
Destructor.
depth_bound_refinement_policy(size_type xrefinement_level_ub=2)
Creates an instance with refinement upper bound xrefinement_ub.
bool is_same_type(const any *other) const
True if other is the same type as this.
void enable_invariant_check() const
Enable invariant checking.
virtual bool should_refine(field_refinement_buffer &xbuffer, size_type xrefinement_depth) const
True if the zone specified by xzone_id should be refined.