SheafSystem
0.0.0.0
|
An abstract policy that determines the conditions under which a zone should be refined. More...
#include <field_refinement_policy.h>
FIELD_REFINEMENT_POLICY FACET | |
size_type | _refinement_depth_ub |
The upper bound and the refinement level of a cell. More... | |
virtual | ~field_refinement_policy () |
Destructor. More... | |
virtual bool | should_refine (field_refinement_buffer &xbuffer, size_type xrefinement_depth) const =0 |
True if the zone specified by xzone_id should be refined. More... | |
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 is equal to or greater than the upper bound. More... | |
void | put_refinement_depth_ub (size_type xub) |
Set the refinement depth upper bound to xub. More... | |
virtual const std::string & | class_name () const |
The class name of this. More... | |
static const std::string & | static_class_name () |
The class name of this class. More... | |
static field_refinement_policy * | new_policy (const std::string &xname) |
Creates an instance of the policy with class name xname. More... | |
static factory< field_refinement_policy > & | policy_factory () |
A factory for making policy objects. More... | |
field_refinement_policy (size_type xrefinement_depth_ub) | |
Creates an instance with reinement upper bound xrefinement_ub. More... | |
field_refinement_policy (const field_refinement_policy &xother) | |
Copy constructor. More... | |
ANY FACET | |
virtual bool | is_ancestor_of (const any *other) const |
Conformance test; true if other conforms to this. More... | |
virtual field_refinement_policy * | clone () const =0 |
Virtual constructor, makes a new instance of the same type as this. More... | |
virtual field_refinement_policy & | operator= (const field_refinement_policy &xother) |
Assignment operator. More... | |
virtual bool | invariant () const |
Class invariant. More... | |
Additional Inherited Members | |
Public Member Functions inherited from sheaf::any | |
bool | is_same_type (const any *other) const |
True if other is the same type as this. More... | |
virtual | ~any () |
Destructor. More... | |
bool | invariant_check () const |
True if invariant checking is enabled. More... | |
void | enable_invariant_check () const |
Enable invariant checking. More... | |
void | disable_invariant_check () const |
Disable invariant check. Intended for preventing recursive calls to invariant and for suppressing invariant checking during multi-phase initialization. More... | |
int | disable_invariance_check_request_depth () const |
Number of times disable_invariant_check has been called without matching call to enable_invariant_check. More... | |
Protected Member Functions inherited from sheaf::any | |
any () | |
default constructor More... | |
An abstract policy that determines the conditions under which a zone should be refined.
Definition at line 53 of file field_refinement_policy.h.
|
virtual |
Destructor.
Definition at line 76 of file field_refinement_policy.cc.
References should_refine().
Referenced by field_refinement_policy().
|
protected |
Creates an instance with reinement upper bound xrefinement_ub.
Definition at line 38 of file field_refinement_policy.cc.
References invariant(), and refinement_depth_ub().
|
protected |
Copy constructor.
Definition at line 56 of file field_refinement_policy.cc.
References invariant(), and ~field_refinement_policy().
|
virtual |
The class name of this.
Reimplemented in fields::variance_bound_refinement_policy, fields::zone_centered_error_bound_refinement_policy, and fields::depth_bound_refinement_policy.
Definition at line 143 of file field_refinement_policy.cc.
References static_class_name().
Referenced by put_refinement_depth_ub().
|
pure virtual |
Virtual constructor, makes a new instance of the same type as this.
Reimplemented from sheaf::any.
Implemented in fields::variance_bound_refinement_policy, fields::zone_centered_error_bound_refinement_policy, and fields::depth_bound_refinement_policy.
Referenced by fields::field_refiner_family::field_refiner_family(), and fields::field_refiner_family::initialize().
|
virtual |
Class invariant.
Reimplemented from sheaf::any.
Reimplemented in fields::variance_bound_refinement_policy, fields::zone_centered_error_bound_refinement_policy, and fields::depth_bound_refinement_policy.
Definition at line 273 of file field_refinement_policy.cc.
References sheaf::any::disable_invariant_check(), sheaf::any::enable_invariant_check(), sheaf::any::invariant(), and sheaf::any::invariant_check().
Referenced by field_refinement_policy(), and operator=().
|
virtual |
Conformance test; true if other conforms to this.
Reimplemented from sheaf::any.
Reimplemented in fields::variance_bound_refinement_policy, fields::zone_centered_error_bound_refinement_policy, and fields::depth_bound_refinement_policy.
Definition at line 232 of file field_refinement_policy.cc.
References operator=().
Referenced by policy_factory().
|
static |
Creates an instance of the policy with class name xname.
Definition at line 181 of file field_refinement_policy.cc.
References policy_factory().
Referenced by fields::field_refiner::field_refiner(), and static_class_name().
|
virtual |
Assignment operator.
Reimplemented in fields::variance_bound_refinement_policy, fields::zone_centered_error_bound_refinement_policy, and fields::depth_bound_refinement_policy.
Definition at line 252 of file field_refinement_policy.cc.
References _refinement_depth_ub, and invariant().
Referenced by is_ancestor_of().
|
static |
A factory for making policy objects.
Definition at line 205 of file field_refinement_policy.cc.
References is_ancestor_of().
Referenced by fields::field_refiner::field_refiner(), new_policy(), fields::zone_centered_error_bound_refinement_policy::put_error_ub(), fields::variance_bound_refinement_policy::put_variance_ub(), and fields::depth_bound_refinement_policy::~depth_bound_refinement_policy().
void fields::field_refinement_policy::put_refinement_depth_ub | ( | size_type | xub | ) |
Set the refinement depth upper bound to xub.
Definition at line 124 of file field_refinement_policy.cc.
References _refinement_depth_ub, class_name(), and refinement_depth_ub().
Referenced by refinement_depth_ub().
sheaf::size_type fields::field_refinement_policy::refinement_depth_ub | ( | ) | const |
The upper bound on the refinement depth of a cell. A cell will not be refined if its refinement depth is equal to or greater than the upper bound.
Definition at line 117 of file field_refinement_policy.cc.
References _refinement_depth_ub, and put_refinement_depth_ub().
Referenced by fields::depth_bound_refinement_policy::depth_bound_refinement_policy(), field_refinement_policy(), put_refinement_depth_ub(), fields::field_refiner::refine(), should_refine(), fields::depth_bound_refinement_policy::should_refine(), fields::zone_centered_error_bound_refinement_policy::should_refine(), fields::variance_bound_refinement_policy::variance_bound_refinement_policy(), and fields::zone_centered_error_bound_refinement_policy::zone_centered_error_bound_refinement_policy().
|
pure virtual |
True if the zone specified by xzone_id should be refined.
Implemented in fields::variance_bound_refinement_policy, fields::zone_centered_error_bound_refinement_policy, and fields::depth_bound_refinement_policy.
Definition at line 93 of file field_refinement_policy.cc.
References refinement_depth_ub(), fields::field_refinement_buffer::source, fields::field_vd::state_is_read_accessible(), and fields::field_refinement_buffer::target.
Referenced by fields::refining_section_pusher::push(), fields::field_refiner::refine(), and ~field_refinement_policy().
|
static |
The class name of this class.
Definition at line 161 of file field_refinement_policy.cc.
References new_policy().
Referenced by class_name().
|
protected |
The upper bound and the refinement level of a cell.
Definition at line 123 of file field_refinement_policy.h.
Referenced by fields::depth_bound_refinement_policy::operator=(), operator=(), fields::variance_bound_refinement_policy::operator=(), put_refinement_depth_ub(), refinement_depth_ub(), fields::depth_bound_refinement_policy::should_refine(), fields::zone_centered_error_bound_refinement_policy::should_refine(), fields::variance_bound_refinement_policy::should_refine(), and fields::zone_centered_error_bound_refinement_policy::zone_centered_error_bound_refinement_policy().