21 #include "SheafSystem/standard_member_hack_crg_interval.h" 23 #include "SheafSystem/assert_contract.h" 24 #include "SheafSystem/explicit_index_space_interval.h" 25 #include "SheafSystem/factory.h" 26 #include "SheafSystem/index_space_family.h" 27 #include "SheafSystem/index_space_iterator.h" 47 ensure(!is_initialized());
105 require(id_spaces_initialized());
106 require(local_id_space_initialized());
107 require(!covers_initialized(
LOWER));
113 _lower_covers_begin =
114 explicit_index_space_interval::new_space(*_id_spaces, 2).begin();
116 _lower_covers_initialized =
true;
120 ensure(covers_initialized(
LOWER));
133 require(id_spaces_initialized());
134 require(local_id_space_initialized());
135 require(!covers_initialized(
UPPER));
141 _upper_covers_begin =
142 explicit_index_space_interval::new_space(*_id_spaces, 2).begin();
144 _upper_covers_initialized =
true;
148 ensure(covers_initialized(
UPPER));
179 static const string result(
"standard_member_hack_crg_interval");
188 sheaf::standard_member_hack_crg_interval::
198 interval_factory().insert_prototype(lproto);
248 ensure(is_same_type(result));
261 if(invariant_check())
265 disable_invariant_check();
269 invariance(crg_interval::invariant());
275 enable_invariant_check();
301 result = xinclude_shallow ?
sizeof(xp) : 0;
virtual void initialize_upper_covers()
Initialize the upper covers for this interval.
virtual bool is_ancestor_of(const any *other) const
Conformance test; true if other conforms to this.
virtual void initialize_lower_covers()
Initialize the lower covers for this interval.
virtual ~standard_member_hack_crg_interval()
Destructor.
Implementation of explicit_crg_interval intended only to support the product poset hack in section_sp...
standard_member_hack_crg_interval()
Default Constructor; constructs an uninitialized interval.
Abstract base class with useful features for all objects.
SHEAF_DLL_SPEC size_t deep_size(const dof_descriptor_array &xp, bool xinclude_shallow=true)
The deep size of the referenced object of type dof_descriptor_array.
const bool UPPER
Selector for upper cover.
const bool LOWER
Selector for lower cover.
virtual bool invariant() const
Class invariant.
virtual standard_member_hack_crg_interval * clone() const
Virtual constructor, makes a new instance of the same type as this.
virtual const std::string & class_name() const
The name of this class; provided to satisfy factory template.