21 #ifndef PRODUCT_SECTION_SPACE_SCHEMA_MEMBER_H 22 #define PRODUCT_SECTION_SPACE_SCHEMA_MEMBER_H 24 #ifndef SHEAF_DLL_SPEC_H 25 #include "SheafSystem/sheaf_dll_spec.h" 28 #ifndef SECTION_SPACE_SCHEMA_MEMBER_H 29 #include "SheafSystem/section_space_schema_member.h" 35 class product_section_space_schema_poset;
36 class sec_rep_descriptor;
87 bool xauto_access =
true)
const 102 bool xcopy_dof_map =
false,
103 bool xauto_access =
true);
121 const tern& xnew_jem,
145 const std::string& xname);
179 bool xauto_access =
true);
191 void update_row_cache_without_disc_id_space()
const;
196 void update_row_cache_with_disc_id_space()
const;
201 void update_row_dof_id_space()
const;
265 int xversion = CURRENT_MEMBER_VERSION)
const;
284 virtual void update_row_cache(
bool xupdate_id_space =
false)
const;
305 bool xis_table_dof)
const;
318 bool xis_table_dof)
const;
327 bool xauto_access)
const;
336 bool xis_table_dof)
const;
344 bool xis_table_dof)
const;
353 bool xauto_access)
const;
362 bool xis_table_dof)
const;
370 bool xis_table_dof)
const;
379 bool xauto_access)
const;
388 bool xis_table_dof)
const;
396 bool xis_table_dof)
const;
405 bool xauto_access)
const;
446 virtual void get_ext_ids(
const std::string& xid_space_name,
463 virtual size_t ext_data_type_ct(
bool xis_table_schema)
const;
641 virtual bool is_ancestor_of(
const any* other)
const;
651 virtual bool invariant()
const;
662 #endif // PRODUCT_SECTION_SPACE_SCHEMA_MEMBER_H section_space_schema_poset * host() const
The poset which this is a handle to a component of.
abstract_poset_member * p_join(abstract_poset_member *other) const
poset join of this with other, auto-allocated the poset join is the least upper bound in the poset ...
abstract_poset_member * greatest_jem() const
The largest member which is join-equivalent to this.
virtual size_t size() const
The number of bytes in this dof.
product_section_space_schema_member * l_meet(abstract_poset_member *other, bool xnew_jem=true)
lattice meet of this with other, auto-, pre-, and self-allocated versions the lattice meet is the gre...
The default name space; a poset which contains other posets as members.
A client handle for a general, abstract partially order set.
A three state "bool". Does not provide the operations of ternary logic and is intended for use mostly...
A path defined by a poset name and a member name separated by a forward slash ('/'). For example: "cell_definitions/triangle".
virtual section_space_schema_member * clone() const =0
Make a new handle, no state instance of current.
product_section_space_schema_member * l_join(abstract_poset_member *other, bool xnew_jem=true)
lattice join of this with other, auto-, pre-, and self-allocated versions the lattice join is the lea...
virtual primitive_type type() const
The primitive type index of the dof defined by this.
An schema poset for a section space represented by a Cartesian product subspace of the tensor product...
product_section_space_schema_member * clone(bool xnew_state, bool xauto_access=true) const
Make a new handle instance of current. Attach the new instance to a new state if xnew_state is true...
product_section_space_schema_member * least_jem() const
The smallest member which is join-equivalent to this.
Abstract base class with useful features for all objects.
virtual size_t alignment() const
The alignment for this dof.
primitive_type
Type ids for sheaf primitives.
A client handle for a mutable partially ordered set.
A map from schema poset member ids to dof values for primitives_poset members.
An index within the external ("client") scope of a given id space.
unsigned long size_type
An unsigned integral type used to represent sizes and capacities.
abstract_poset_member * l_not(bool xnew_jem=true) const
lattice pseudo-complement of this, auto-allocated The lattice pseudo-complement is the largest latt...
abstract_poset_member * least_jem() const
The smallest member which is join-equivalent to this.
An array for storing structs which describe the size, alignment, and offset of dofs within a dof tupl...
abstract_poset_member * l_meet(abstract_poset_member *other, bool xnew_jem=true)
lattice meet of this with other, auto-allocated the lattice meet is the greatest lower bound in the...
Iterates over the subset of Zn defined by the characteristic function host().
Iterates in postorder over dofs of a schema member anchor. Attaches a handle of type schema_poset_mem...
product_section_space_schema_member * greatest_jem() const
The largest member which is join-equivalent to this.
int_type pod_index_type
The plain old data index type.
A client handle for a poset member which has been prepared for use as a schema for a section space...
product_section_space_schema_member * p_join(abstract_poset_member *other) const
poset join of this with other, auto-, pre-, and self-allocated versions the poset join is the least u...
virtual size_type offset(pod_index_type xdof_id, bool xis_table_dof) const
The offset for the table dof (xis_table_dof true) or row dof referred to by xdof_id in the schema def...
An abstract client handle for a member of a poset.
abstract_poset_member * p_meet(abstract_poset_member *other)
poset meet of this with other, auto-allocated the poset meet is the greatest lower bound in the pos...
An array representation of abstract class poset_dof_map.
Namespace for the fiber_bundles component of the sheaf system.
A client handle for a poset member which has been prepared for use as a schema.
product_section_space_schema_member * p_meet(abstract_poset_member *other)
poset meet of this with other, auto-, pre-, and self-allocated versions the poset meet is the greates...
product_section_space_schema_poset * host() const
The poset which this is a handle to a component of.
product_section_space_schema_member * l_not(bool xnew_jem=true) const
lattice pseudo-complement of this, auto-, pre- and self allocated versions The lattice pseudo-complem...
abstract_poset_member * l_join(abstract_poset_member *other, bool xnew_jem=true)
lattice join of this with other, auto-allocated the lattice join is the least upper bound in the la...
A client handle for a poset member which has been prepared for use as a schema for a section space...