21 #include "SheafSystem/local_base_space_member.h" 23 #include "SheafSystem/chart_point.h" 24 #include "SheafSystem/namespace_poset.h" 25 #include "SheafSystem/poset_path.h" 26 #include "SheafSystem/preorder_iterator.h" 27 #include "SheafSystem/assert_contract.h" 46 require(state_is_read_accessible());
47 require(xpt.
db() == db());
56 refine_point_pa(xpt, *result);
73 require(state_is_read_accessible());
76 require(xpt.
chart_id() == index().pod());
78 require(xpt.
db() == db());
101 require(state_is_read_accessible());
103 require(xpt.
db() == db());
112 result = lpt.
clone();
113 unrefine_point_pa(xpt, *result);
117 ensure(result->
chart_id() == index().pod());
130 require(state_is_read_accessible());
142 ensure(result.
chart_id() == index().pod());
155 require(state_is_read_write_accessible());
178 require(state_is_read_write_accessible());
200 require(state_is_read_write_accessible());
222 require(state_is_read_write_accessible());
250 ensure(!is_attached());
317 if(invariant_check())
321 disable_invariant_check();
330 enable_invariant_check();
367 attach_to_state(&xother);
371 ensure(is_same_state(&xother));
385 require(is_ancestor_of(&xother));
virtual void unrefine_point_pa(const chart_point &xpt, chart_point &result) const =0
The point in this which is the same as xpt in the direct refinement of this; pre-allocated version...
virtual bool is_ancestor_of(const any *other) const
True if other conforms to this.
A client handle for a member of a base space poset.
virtual void refine_point_pa(const chart_point &xpt, chart_point &result) const =0
The point in the direct refinement of this which is the same as xpt; pre-allocated version...
virtual void unrefine()=0
Removes the standard refinement of this from its lower cover and changes this from a jrm to a jim...
chart_point * refine_point(const chart_point &xpt) const
The point in the direct refinement of this which is the same as xpt; auto-allocated version...
virtual bool invariant() const
Class invariant.
virtual int db() const =0
The dimension of this chart.
pod_index_type chart_id() const
The id of the chart this point is in.
local_base_space_member()
Default constructor; creates a new, unattached local_base_space_member handle.
virtual void simplify()=0
Inserts the standard simplex refinement of this into its lower cover and changes this from a jim to a...
Abstract base class with useful features for all objects.
virtual chart_point * clone() const =0
Virtual constructor, makes a new instance of the same type as this.
virtual bool invariant() const
Class invariant.
virtual local_base_space_member & operator=(const abstract_poset_member &xother)
Assignment operator; attaches this to the same state as xother.
virtual void unsimplify()=0
Removes the standard simplex refinement of this from its lower cover and changes this from a jrm to a...
chart_point * unrefine_point(const chart_point &xpt) const
The point in this which is the same as xpt in the direct refinement of this; auto-allocated version...
virtual void refine()=0
Inserts the standard refinement of this into its lower cover and changes this from a jim to a jrm...
An abstract client handle for a member of a poset.
Namespace for the fiber_bundles component of the sheaf system.
bool is_same_type(const any *other) const
True if other is the same type as this.