SheafSystem
0.0.0.0
|
A Cartesian product space. More...
#include <gln_space.h>
Friends | |
class | fiber_bundles_namespace |
GLN_SPACE FACET | |
typedef gln | member_type |
The type of member associated with this space. More... | |
typedef vd_space | vector_space_type |
The type of the vector space associated with this space. More... | |
typedef gln_table_dofs_type | table_dofs_type |
The table dofs type defined by the standard schema. More... | |
static const std::string & | standard_schema_poset_name () |
The name of the standard schema poset for this class. More... | |
static const poset_path & | standard_schema_path () |
The path to the standard schema for this class. More... | |
static int | d (const namespace_poset &xns, const poset_path &xvector_space_path, bool xauto_access) |
The dimension of the representation space; n in GL(n, R) implied by the vector space specified by xvector_space_path. More... | |
static int | d (int xn) |
The dimension of the representation space; n in GL(n, R) implied by the vector space with dimension specified by xn. More... | |
static gln_space & | new_table (namespace_type &xhost, const poset_path &xpath, const poset_path &xschema_path, const poset_path &xvector_space_path, bool xauto_access) |
Creates a new tp_space in namespace xns with path xpath, schema specified by xschema_path, and table attribute vector_space_path specified by xvector_space_path. More... | |
int | n () const |
Dimension of the representation space; n in GL(n, R). More... | |
int | n (bool xauto_access) const |
Dimension of the representation space; n in GL(n, R). More... | |
poset_path | scalar_space_path () const |
The path of the underlying scalar space. More... | |
poset_path | scalar_space_path (bool xauto_access) const |
The path of the underlying scalar space. More... | |
poset_path | vector_space_path () const |
The path of the underlying vector space. More... | |
poset_path | vector_space_path (bool xauto_access) const |
The path of the underlying vector space. More... | |
virtual int | d () const |
Dimension of this as a vector space. More... | |
int | d (bool xauto_access) const |
Dimension of this as a vector space; auto-access version. More... | |
gln_space () | |
Default constructor; creates a new gln_space handle not attached to any state. More... | |
gln_space (const gln_space &xother) | |
Copy constructor; disabled. More... | |
virtual | ~gln_space () |
Destructor. More... | |
gln_space (gln *xtop, gln *xbottom) | |
Covariant constructor. More... | |
POSET_STATE_HANDLE FACET | |
virtual poset_type | type_id () const |
Identifier for the type of this poset. More... | |
virtual const char * | class_name () const |
The name of this class. More... | |
virtual pod_index_type | prereq_id (int xi) const |
The id of the xi-th prerequisite poset for this. More... | |
gln_space & | operator= (const poset_state_handle &xother) |
Assignment operator; disabled. More... | |
ANY FACET | |
virtual bool | is_ancestor_of (const any *xother) const |
True if other conforms to this. More... | |
virtual gln_space * | clone () const |
Virtual constructor; creates a new handle of the same actual type as this, attached to the same state as this. More... | |
virtual bool | invariant () const |
Class invariant. More... | |
Additional Inherited Members | |
Public Types inherited from sheaf::poset | |
typedef namespace_poset | namespace_type |
The type of namespace for this type of member. More... | |
Public Types inherited from sheaf::poset_state_handle | |
typedef schema_poset_member | schema_type |
The type of schema member for this class. More... | |
Public Member Functions inherited from sheaf::poset | |
virtual void | begin_jim_edit_mode (bool xauto_access=true) |
Allow editing of jims and jim order relation. More... | |
virtual void | end_jim_edit_mode (bool xensure_lattice_invariant=true, bool xauto_access=true) |
Prevent editing of jims and jim order relation. More... | |
Public Member Functions inherited from sheaf::poset_state_handle | |
poset_path | member_path (pod_index_type xmbr_hub_id, bool xauto_access) const |
A path for the member with hub id xmbr_hub_id. More... | |
virtual std::string | member_name (pod_index_type xmbr_hub_id, bool xauto_access=false) const |
A name for the member with hub id xmbr_hub_id. More... | |
std::string | member_name (const scoped_index &xmbr_id, bool xauto_access=false) const |
A name for the member with id xmbr_id. More... | |
void | all_member_names (pod_index_type xmbr_hub_id, block< std::string > &xresult, bool xauto_access=false) const |
All the names for the member with hub id xmbr_hub_id. More... | |
void | all_member_names (const scoped_index &xmbr_id, block< std::string > &xresult, bool xauto_access=false) const |
All the names for the member with id xmbr_id. More... | |
size_type | member_name_ct (pod_index_type xmbr_hub_id, bool xauto_access) const |
The number of names for the member with hub id xmbr_hub_id. More... | |
size_type | member_name_ct (const scoped_index &xmbr_id, bool xauto_access) const |
The number of names for the member with id xmbr_id. More... | |
bool | member_has_name (pod_index_type xmbr_hub_id, const std::string &xname, bool xauto_access=false) const |
True if xname is a name for the member with hub id xmbr_hub_id. More... | |
bool | member_has_name (const scoped_index &xmbr_hub_id, const std::string &xname, bool xauto_access=false) const |
True if xname is a name for the member with id xmbr_id. More... | |
virtual void | put_member_name (pod_index_type xmbr_hub_id, const std::string &xname, bool xunique, bool xauto_access=false) |
Make xname a name for the member with hub id xmbr_hub_id. if xunique, make xname the only name. More... | |
void | put_member_name (const scoped_index &xmbr_id, const std::string &xname, bool xunique, bool xauto_access=false) |
Make xname a name for the member with id xmbr_id. if xunique, make xname the only name. More... | |
void | delete_member_name (const std::string &xname, bool xauto_access=false) |
Make xname not a name for any member. More... | |
void | delete_all_member_names (pod_index_type xmbr_hub_id, bool xauto_access=false) |
Delete all names for the member with hub id xmbr_hub_id. More... | |
void | delete_all_member_names (const scoped_index &xmbr_id, bool xauto_access=false) |
Delete all names for the member with id xmbr_id. More... | |
virtual schema_poset_member & | schema () |
The schema for this poset (mutable version). More... | |
virtual const schema_poset_member & | schema () const |
The schema for this poset (const version). More... | |
schema_poset_member & | schema (bool xauto_access) |
The schema for this poset, auto_accessible (mutable version). More... | |
const schema_poset_member & | schema (bool xauto_access) const |
The schema for this poset, auto_accessible (const version). More... | |
virtual bool | schema_is_ancestor_of (const schema_poset_member *xother_schema) const |
True if xother_schema conforms to the type of schema required by this. More... | |
bool | schema_is (const std::string &xschema_name) const |
True if the schema of this has name xname. More... | |
bool | same_schema (const poset_state_handle *xother) const |
True if other has the same schema as this. More... | |
bool | same_schema (const abstract_poset_member *xother) const |
True if other has the same schema as this. More... | |
bool | in_jim_edit_mode () const |
True if editing jims and jim order relation is allowed. More... | |
int | jim_edit_depth (bool xauto_access) const |
Number of times begin_jim edit_mode has been called without matching end_jim_edit_mode. More... | |
bool | is_external () const |
True if this has a corresponding member in a name space, but is not yet attached to a state. (This condition implies the name space has been imported from some external source, but the poset has not yet been imported.) More... | |
virtual void | get_read_access () const |
Get read access to the state associated with this. More... | |
virtual void | get_read_write_access (bool xrelease_read_only_access=false) |
Get read write access to the state associated with this. If release_read_only_access is requested, read only access will be released then read_write_access will be requested, finally the same level of read_access as before will be requested. More... | |
virtual void | release_access (bool xall=false) const |
Release access. If xall is true, release all levels of access. Otherwise, release one level of access. More... | |
virtual bool | is_attached () const |
True if this is attached to a state. More... | |
bool | is_same_state (const poset_state_handle *xother) const |
True if this is attached to the same state as xother. More... | |
namespace_poset * | host () const |
The namespace this poset resides in. Obsolete; use name_space() instead. More... | |
namespace_poset * | name_space () const |
The namespace this poset resides in. More... | |
const scoped_index & | index () const |
The member index of this poset within the namespace host() More... | |
virtual const primitives_poset & | primitives () const |
The set of primitives used by this poset. More... | |
virtual std::string | name () const |
The name of this poset. More... | |
virtual std::string | name (bool xauto_access) const |
The name of this poset. More... | |
virtual poset_path | path (bool xauto_access=true) const |
The path of this poset. More... | |
virtual pod_index_type | new_member (bool xis_jim, pod_index_type xtuple_hub_id) |
Create a disconnected member with is_jim == xis_jim and the dof tuple identified by hub id xtuple_hub_id. WARNING: this routine leaves a disconnected member in the poset and hence leaves the poset in an invalid state. The client must properly link the member created by this routine using new_link in order to return the poset to a valid state. More... | |
void | new_member (bool xis_jim, const scoped_index &xtuple_id, scoped_index &result) |
Create a disconnected member with is_jim == xis_jim and the dof tuple identified by id xtuple_id. WARNING: this routine leaves a disconnected member in the poset and hence leaves the poset in an invalid state. The client must properly link the member created by this routine using new_link in order to return the poset to a valid state. More... | |
virtual pod_index_type | new_member (bool xis_jim, poset_dof_map *xdof_map=0, bool xcopy_dof_map=false) |
Create a disconnected member with is_jim == xis_jim. If xdof_map != 0, the new member uses it for dof storage, otherwise it creates an instance of array_poset_dof_map. WARNING: this routine leaves a disconnected member in the poset and hence leaves the poset in an invalid state. The client must properly link the member created by this routine using new_link in order to return the poset to a valid state. More... | |
void | new_member (bool xis_jim, poset_dof_map *xdof_map, bool xcopy_dof_map, scoped_index &result) |
Create a disconnected member with is_jim == xis_jim. If xdof_map != 0, the new member uses it for dof storage, otherwise it creates an instance of array_poset_dof_map. WARNING: this routine leaves a disconnected member in the poset and hence leaves the poset in an invalid state. The client must properly link the member created by this routine using new_link in order to return the poset to a valid state. More... | |
virtual pod_index_type | new_member_interval (const std::string &xinterval_type, size_type xsize, const block< pod_index_type > &xtuple_hub_ids, const block< pod_index_type > &xdata) |
Create a disconnected member interval of type xinterval_type with size xsize, dof tuple ids xtuple_hub_ids, and interval type specific private data xdata. WARNING: this routine leaves a disconnected member in the poset and hence leaves the poset in an invalid state. The client must properly link the member created by this routine using new_link in order to return the poset to a valid state. More... | |
void | new_member_interval (const std::string &xinterval_type, size_type xsize, const block< pod_index_type > &xtuple_hub_ids, const block< pod_index_type > &xdata, scoped_index &result) |
Create a disconnected member interval of type xinterval_type with size xsize, dof tuple hub ids xtuple_hub_ids, and interval type specific private data xdata. WARNING: this routine leaves a disconnected member in the poset and hence leaves the poset in an invalid state. The client must properly link the member created by this routine using new_link in order to return the poset to a valid state. More... | |
virtual void | delete_member (pod_index_type xmbr_hub_id) |
Delete the member with hub id xmbr_hub_id. Warning: this routine does not delete links; it will leave any links to this member dangling. Use abstract_poset_member::delete_state unless you know what you are doing. More... | |
void | delete_member (const scoped_index &xmbr_id) |
Delete the member with id xmbr_id. Warning: this routine does not delete links; it will leave any links to this member dangling. Use abstract_poset_member::delete_state unless you know what you are doing. More... | |
virtual int | member_ct () const |
The number of members of this poset. More... | |
virtual int | standard_member_ct () const |
The number of standard members automatically allocated by the constructor. More... | |
bool | has_standard_member_ct () const |
True if poset is in its initial state, that is, it contains just the standard members. More... | |
virtual scoped_index | member_index_ub () const |
The upper bound on the member_index;. More... | |
index_iterator | member_iterator () const |
virtual bool | contains_member (pod_index_type xmbr_hub_id, bool xauto_access=true) const |
True if some version of this poset contains poset member with hub id xmbr_hub_id. More... | |
bool | contains_member (const scoped_index &xmbr_id, bool xauto_access=true) const |
True if some version of this poset contains poset member with id xmbr_id. More... | |
virtual bool | contains_member (pod_index_type xmbr_hub_id, int xversion, bool xauto_access=true) const |
True if version xversion of this poset contains poset member with hub id xmbr_hub_id. More... | |
bool | contains_member (const scoped_index &xmbr_id, int xversion, bool xauto_access=true) const |
True if version xversion of this poset contains poset member with id xmbr_id. More... | |
virtual bool | contains_member (const std::string &xname, bool xauto_access=true) const |
True if this poset contains a member with name xname. More... | |
bool | contains_member (const abstract_poset_member *xmbr, bool xauto_access=true) const |
True if this poset contains xmbr. More... | |
bool | contains_members (const scoped_index *xmbrs, int xmbrs_ct, bool xauto_access=true) const |
True if this poset contains poset member(s) with indices in xmbrs. More... | |
bool | contains_members (pod_index_type *xmbrs, int xmbrs_ct, bool xauto_access=true) const |
True if this poset contains poset member(s) with indices in xmbrs. More... | |
bool | contains_members (const std::string *xnames, int xnames_ct, bool xauto_access=true) const |
True if this poset contains poset member(s) with names in xnames. More... | |
bool | contains_members (const block< pod_index_type > &p, bool xauto_access=true) const |
True if this poset contains poset members with indices in p. More... | |
bool | contains_members (const block< scoped_index > &p, bool xauto_access=true) const |
True if this poset contains poset members with indices in p. More... | |
bool | contains_members (const block< std::string > &p, bool xauto_access=true) const |
True if this poset contains poset members with names in p. More... | |
bool | is_empty () const |
True if this poset is empty. More... | |
virtual bool | is_jim (pod_index_type xmbr_hub_id, bool xin_current_version=true) const |
True if the member with hub id xmbr_hub_id is a jim in the current version (xin_current_version == true) or in some version (xin_current_version == false). More... | |
bool | is_jim (const scoped_index &xmbr_id, bool xin_current_version=true) const |
True if the member with id xmbr_id is a jim in the current version (xin_current_version == true) or in some version (xin_current_version == false). More... | |
bool | is_jim (const std::string &xname, bool xin_current_version=true) const |
True if the member with name xname is a jim in the current version (xin_current_version == true) or in some version (xin_current_version == false). More... | |
virtual bool | is_atom (pod_index_type xmbr_hub_id) const |
True if the member with hub id xmbr_hub_id covers the bottom. More... | |
bool | is_atom (const scoped_index &xmbr_id) const |
True if the member with id xmbr_id covers the bottom. More... | |
abstract_poset_member & | top () |
The top member of the poset (mutable version) More... | |
const abstract_poset_member & | top () const |
The top member of the poset (const version) More... | |
abstract_poset_member & | bottom () |
The bottom member of the poset (mutable version) More... | |
const abstract_poset_member & | bottom () const |
The bottom member of the poset (const version) More... | |
virtual size_type | subposet_ct () const |
The number of subposets of this poset. More... | |
virtual int | standard_subposet_ct () const |
The number of standard subposets automatically allocated by the constructor. More... | |
bool | has_standard_subposet_ct () const |
True if poset is in its initial state, that is, it contains just the standard subposets. More... | |
virtual scoped_index | subposet_index_ub () const |
The upper bound on the subposet index;. More... | |
virtual pod_index_type | subposet_id (const std::string &xname) const |
The hub id of the subposet with name xname. More... | |
virtual void | subposet_id (const std::string &xname, scoped_index &result) const |
The id of the subposet with name xname. More... | |
virtual index_space_iterator & | get_subposet_id_space_iterator () const |
Allocates an id space iterator over the subposet ids from the iterator pool. More... | |
virtual void | release_subposet_id_space_iterator (index_space_iterator &xitr) const |
Returns the id space iterator xitr to the subposet iterator pool. More... | |
virtual bool | includes_subposet (pod_index_type xsubposet_hub_id, bool xauto_access=true) const |
True if this poset includes subposet with hub id xsubposet_hub_id. More... | |
bool | includes_subposet (const scoped_index &xsubposet_id, bool xauto_access=true) const |
True if this poset includes subposet with id xsubposet_id. More... | |
bool | includes_subposet (const std::string &xname, bool xauto_access=true) const |
True if this poset includes subposet with name xname. More... | |
bool | includes_subposet (const subposet *xs, bool xauto_access=true) const |
True if this poset includes xs. More... | |
bool | includes_subposets (const block< pod_index_type > &xhub_ids, bool xauto_access=true) const |
True if this poset includes subposets with hub ids xhub_ids. More... | |
bool | includes_subposets (const block< scoped_index > &xids, bool xauto_access=true) const |
True if this poset includes subposets with ids xids. More... | |
virtual pod_index_type | new_subposet (bool xinitialize=true) |
Creates a new subposet. If xinitialize, make the subposet empty,. More... | |
void | new_subposet (bool xinitialize, scoped_index &result) |
Creates a new subposet. If xinitialize, make the subposet empty,. More... | |
virtual pod_index_type | new_subposet (const block< pod_index_type > &xmembers) |
Creates a new subposet. Set the membership to the members with indices in xmambers. More... | |
virtual void | new_subposet (const block< scoped_index > &xmembers, scoped_index &result) |
Creates a new subposet. Set the membership to the members with indices in xmambers. More... | |
virtual void | delete_subposet (pod_index_type xsubposet_hub_id) |
Deletes the subposet with hub id xsubposet_hub_id. More... | |
void | delete_subposet (const scoped_index &xsubposet_id) |
Deletes the subposet with id xsubposet_id. More... | |
virtual const subposet & | whole () const |
The "improper" subset containing all members of this poset. More... | |
virtual subposet & | jims () |
The subset of all jims (mutable version) More... | |
virtual const subposet & | jims () const |
The subset of all jims (const version) More... | |
subposet & | table_dof_subposet () |
The table dof subposet when this poset is used as a schema (mutable version). More... | |
const subposet & | table_dof_subposet () const |
The table dof subposet when this poset is used as a schema (const version). More... | |
subposet & | row_dof_subposet () |
The row dof subposet when this poset is used as a schema (mutable version). More... | |
const subposet & | row_dof_subposet () const |
The row dof subposet when this poset is used as a schema (const version). More... | |
virtual int | version_ct () const |
The number of versions currently defined. More... | |
virtual int | version () const |
The current version. More... | |
virtual pod_index_type | version_index (int xversion) const |
The subposet hub id of the whole() subposet for version xversion. More... | |
void | version_index (int xversion, scoped_index &result) const |
The subposet id of the whole() subposet for version xversion. More... | |
virtual pod_index_type | version_jims_index (int xversion) const |
The subposet hub id of the jims() subposet for version xversion. More... | |
void | version_jims_index (int xversion, scoped_index &result) const |
The subposet id of the jims() subposet for version xversion. More... | |
bool | has_version (int xversion) const |
True if xversion is a valid version. More... | |
bool | is_version () const |
True if this poset is a version. More... | |
const index_space_family & | member_id_spaces (bool xauto_access) const |
Collection of member id spaces for this (const version). More... | |
index_space_family & | member_id_spaces (bool xauto_access) |
Collection of member id spaces for this (mutable version). More... | |
const hub_index_space_handle & | member_hub_id_space (bool xauto_access) const |
The member hub id space. More... | |
virtual const scoped_index & | member_id (bool xauto_access) const |
An id in the member hub id space; intended for copying to initialize ids to the member id space. More... | |
scoped_index | member_id (pod_index_type xid, bool xauto_access) const |
An id in the member hub id space with pod xid. More... | |
virtual pod_index_type | member_id (const std::string &xname, bool xauto_access) const |
The hub id of the member with name xname. More... | |
void | member_id (const std::string &xname, scoped_index &result, bool xauto_access) const |
The index of the member with name xname. More... | |
virtual void | new_link (pod_index_type xgreater, pod_index_type xlesser) |
Insert a cover link from greater to lesser (that is, hub id xgreater covers hub id xlesser). WARNING: this routine does not ensure that the link is a cover link, that is, it does not remove redundant or conflicting links. Improper use of this routine can produce inconsistent poset states. More... | |
void | new_link (const scoped_index &xgreater, const scoped_index &xlesser) |
Insert a cover link from greater to lesser (that is, id xgreater covers id xlesser). WARNING: this routine does not ensure that the link is a cover link, that is, it does not remove redundant or conflicting links. Improper use of this routine can produce inconsistent poset states. More... | |
virtual void | delete_link (pod_index_type xgreater, pod_index_type xlesser) |
Delete the cover link between hub id xgreater and hub id xlesser. More... | |
void | delete_link (const scoped_index &xgreater, const scoped_index &xlesser) |
Delete the cover link between id xgreater and id xlesser. More... | |
virtual bool | contains_link (pod_index_type xgreater, pod_index_type xlesser) const |
True if there is a cover link between hub id xgreater and hub id xlesser. More... | |
bool | contains_link (const scoped_index &xgreater, const scoped_index &xlesser) const |
True if there is a cover link between id xgreater and id xlesser. More... | |
pod_index_type | cover_id_space_id (bool xlower, pod_index_type xmbr_hub_id) const |
The id for the lower (xlower true) or upper (xlower false) cover id space of the member with hub id xmbr_hub_id. More... | |
pod_index_type | cover_id_space_id (bool xlower, const scoped_index &xmbr_id) const |
The id for the lower (xlower true) or upper (xlower false) cover id space of the member with id xmbr_id. More... | |
index_space_handle & | get_cover_id_space (bool xlower, pod_index_type xmbr_hub_id) const |
Allocates a handle for the lower (xlower true) or upper (xlower false) cover id space of the member with hub id xmbr_hub_id from the pool of id spaces. More... | |
index_space_handle & | get_cover_id_space (bool xlower, const scoped_index &xmbr_id) const |
Allocates a handle for the lower (xlower true) or upper (xlower false) cover id space of the member with id xmbr_id from the pool of id spaces. More... | |
template<typename handle_type > | |
handle_type & | get_cover_id_space (bool xlower, pod_index_type xmbr_index) const |
Allocates an handle of type handle_type for the lower (xlower true) or upper (xlower false) cover of member with index xmbr_index from the pool of id spaces. More... | |
template<typename handle_type > | |
bool | cover_id_space_handle_conforms_to (bool xlower, pod_index_type xmbr_index) const |
True if a handle for the lower (xlower true) or upper (xlower false) cover id space of the member with hub id xmbr_index conforms to a handle of type handle_type. More... | |
void | release_cover_id_space (index_space_handle &xcover_id_space) const |
Returns xcover_id_space to the pool of id spaces. More... | |
index_space_iterator & | get_cover_id_space_iterator (bool xlower, pod_index_type xmbr_hub_id) const |
Allocates an iterator for the lower (xlower true) or upper (xlower false) cover id space of the member with hub id xmbr_hub_id from the pool of id space iterators. More... | |
index_space_iterator & | get_cover_id_space_iterator (bool xlower, const scoped_index &xmbr_id) const |
Allocates an iterator for the lower (xlower true) or upper (xlower false) cover id space of the member with id xmbr_id from the pool of id space iterators. More... | |
void | release_cover_id_space_iterator (index_space_iterator &xcover_itr) const |
Returns xcover_itr to the pool of id space iterators. More... | |
bool | cover_contains_iterator (bool xlower, pod_index_type xmbr_hub_id, const index_space_iterator &xitr) const |
True if and only if the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id is the domain of iterator xitr. More... | |
bool | cover_contains_iterator (bool xlower, const scoped_index &xmbr_id, const index_space_iterator &xitr) const |
True if and only if the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id is the domain of iterator xitr. More... | |
bool | cover_is_empty (bool xlower, pod_index_type xmbr_hub_id) const |
True if and only if the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id is empty. More... | |
bool | cover_is_empty (bool xlower, const scoped_index &xmbr_id) const |
True if and only if the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id is empty. More... | |
bool | cover_is_singleton (bool xlower, pod_index_type xmbr_hub_id) const |
True if and only if the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id contains exactly one member. More... | |
bool | cover_is_singleton (bool xlower, const scoped_index &xmbr_id) const |
True if and only if the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id contains exactly one member. More... | |
virtual size_type | cover_ct (bool xlower, pod_index_type xmbr_hub_id) const |
The number of members in the lower cover (xlower true) or upper cover (xlower false) of the member with hub id xmbr_hub_id. More... | |
size_type | cover_ct (bool xlower, const scoped_index &xmbr_id) const |
The number of members in the lower cover (xlower true) or upper cover (xlower false) of the member with id xmbr_id. More... | |
bool | cover_contains_member (bool xlower, pod_index_type xmbr_hub_id, pod_index_type xother_mbr_hub_id) const |
True if and only if the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id contains member with hub id xother_mbr_hub_id. More... | |
bool | cover_contains_member (bool xlower, const scoped_index &xmbr_id, const scoped_index &xother_mbr_id) const |
True if and only if the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id contains member with id xother_mbr_id. More... | |
bool | cover_is_equal (bool xlower, pod_index_type xmbr_hub_id, pod_index_type xother_mbr_hub_id) const |
True if and only if the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id contains the same members as the lower or upper cover set, respectively, of the member with hub id xother_mbr_hub_id. More... | |
bool | cover_is_equal (bool xlower, const scoped_index &xmbr_id, const scoped_index &xother_mbr_id) const |
True if and only if the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id contains the same members as the lower or upper cover set, respectively, of the member with id xother_mbr_id. More... | |
pod_index_type | first_cover_member (bool xlower, pod_index_type xmbr_hub_id) const |
Hub id of the first member of the lower (xlower true) or upper (xlower false) cover of the member with hub id xmbr_hub_id. More... | |
void | first_cover_member (bool xlower, const scoped_index &xmbr_id, scoped_index &result) const |
Id of the first member of the lower (xlower true) or upper (xlower false) cover of the member with id xmbr_id. More... | |
void | insert_cover_member (pod_index_type xother_mbr_hub_id, bool xlower, pod_index_type xmbr_hub_id) |
Inserts hub id xother_mbr_hub id in the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id. More... | |
void | insert_cover_member (const scoped_index &xother_mbr_id, bool xlower, const scoped_index &xmbr_id) |
Inserts id xother_mbr_id in the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id. More... | |
void | insert_cover_member (pod_index_type xother_mbr_hub_id, bool xlower, pod_index_type xmbr_hub_id, index_space_iterator &xitr) |
Inserts hub id xother_mbr_hub_id in the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id, at a position just before xitr. Increments xitr to the position after the inserted entry. More... | |
void | insert_cover_member (const scoped_index &xother_mbr_id, bool xlower, const scoped_index &xmbr_id, index_space_iterator &xitr) |
Inserts id xother_mbr_index in the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id, at a position just before xitr. Increments xitr to the position after the inserted entry. More... | |
void | remove_cover_member (pod_index_type xother_mbr_hub_id, bool xlower, pod_index_type xmbr_hub_id) |
Removes hub id xother_mbr_hub_id from the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id. More... | |
void | remove_cover_member (const scoped_index &xother_mbr_id, bool xlower, const scoped_index &xmbr_id) |
Removes id xother_mbr_id from the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id. More... | |
void | remove_cover_member (index_space_iterator &xitr, bool xlower, pod_index_type xmbr_hub_id) |
Removes the current item of xitr from the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id; If xitr is at the end, forces xitr.is_done(). Otherwise, increments xitr to the next position. More... | |
void | remove_cover_member (index_space_iterator &xitr, bool xlower, const scoped_index &xmbr_id) |
Removes the current item of xitr from the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id; If xitr is at the end, forces xitr.is_done(). Otherwise, increments xitr to the next position. More... | |
template<typename filter_type > | |
void | remove_cover_members (const filter_type &xfilter, bool xlower, pod_index_type xmbr_hub_id) |
Removes all members for which functor xfilter(xmbr.index().hub_pod()) is true from the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id. More... | |
template<typename filter_type > | |
void | remove_cover_members (const filter_type &xfilter, bool xlower, const scoped_index &xmbr_id) |
Removes all members for which functor xfilter(xmbr.index().hub_pod()) is true from the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id. More... | |
void | replace_cover_member (const scoped_index &xold_other_mbr_hub_id, const scoped_index &xnew_other_mbr_hub_id, bool xlower, const scoped_index &xmbr_hub_id) |
Replaces hub id xold_other_mbr_hub_id with hub id xnew_other_mbr_hub_id in the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id. More... | |
void | replace_cover_member (pod_index_type xold_other_mbr_id, pod_index_type xnew_other_mbr_id, bool xlower, pod_index_type xmbr_id) |
Replaces id xold_other_mbr_id with id xnew_other_mbr_id in the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id. More... | |
void | clear_cover (bool xlower, pod_index_type xmbr_hub_id) |
Clears the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id. More... | |
void | clear_cover (bool xlower, const scoped_index &xmbr_id) |
Clears the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id. More... | |
void | copy_cover (bool xlower, pod_index_type xmbr_hub_id, pod_index_type xother_mbr_hub_id) |
Copies the lower (xlower true) or upper (xlower false) cover set of the member with hub id xmbr_hub_id to the member with hub id xother_mbr_hub_id. More... | |
void | copy_cover (bool xlower, const scoped_index &xmbr_id, const scoped_index &xother_mbr_id) |
Copies the lower (xlower true) or upper (xlower false) cover set of the member with id xmbr_id to the member with id xother_mbr_id. More... | |
void | append_upper_cover_of_bottom (pod_index_type xmbr_hub_begin, pod_index_type xmbr_hub_end) |
Appends the interval of hub ids [xmbr_hub_begin, xmbr_hub_end) to the upper cover of bottom. This function is intended to use by block members that store there vertices in a gathered id space. More... | |
void | append_upper_cover_of_bottom (const scoped_index &xmbr_begin, const scoped_index &xmbr_end) |
Appends the interval of ids [xbegin, xend) to the upper cover of bottom. This function is intended to use by block members that store there vertices in a gathered id space. More... | |
virtual bool | table_dof_map_conforms (const poset_dof_map *xdof_map) const |
True if xdof_map conforms to (is derived from) the type of table dof map required by this poset state and handle. More... | |
virtual bool | row_dof_map_conforms (const poset_dof_map *xdof_map) const |
True if xdof_map conforms to (is derived from) the type of row dof map required by this poset state and handle. More... | |
virtual array_poset_dof_map & | table_dof_map (bool xrequire_write_access=false) |
The map from table dof client_ids to table dof values for this poset (mutable version) More... | |
virtual const array_poset_dof_map & | table_dof_map (bool xrequire_write_access=false) const |
The map from table dof client_ids to table dof values for this poset (const version) More... | |
void | table_dof_tuple (void *xbuf, size_t xbuflen) const |
OBSOLETE: use table_dofs(). Copies the entire table dof tuple from internal storage to xbuf. More... | |
void * | table_dofs () |
The table dofs for this instance (mutable version). More... | |
const void * | table_dofs () const |
The table dofs for this instance (const version). More... | |
void * | table_dofs (bool xauto_access) |
The table dofs for this instance (mutable auto-access version). More... | |
const void * | table_dofs (bool xauto_access) const |
The table dofs for this instance (const auto-access version). More... | |
virtual bool | is_schematized (bool xauto_access) const |
True if this poset has been prepared for use as a schema, that is, if the top member has been schematized. More... | |
virtual void | schematize (subposet *xtable_dof_subposet, subposet *xrow_dof_subposet, bool xall_members=false) |
Prepare this poset and its top member for use as a schema. If xall_members = true, schematize all other members as well. More... | |
virtual bool | le (pod_index_type xgreater, pod_index_type xlesser) const |
True if hub id xlesser is less than or equal to hub id xgreater. More... | |
bool | le (const scoped_index &xgreater, const scoped_index &xlesser) const |
True if id xlesser is less than or equal to id xgreater. More... | |
virtual bool | leqv (pod_index_type xgreater, pod_index_type xlesser) const |
True if hub id xlesser is less than or equivalent to hub id xgreater. More... | |
bool | leqv (const scoped_index &xgreater, const scoped_index &xlesser) const |
True if id xlesser is less than or equivalent to id xgreater. More... | |
virtual bool | is_jem (pod_index_type xmbr_hub_id, pod_index_type xother_hub_id) const |
True if hub id xother_hub_id is join equivalent to hub id xmbr_hub_id. More... | |
bool | is_jem (const scoped_index &xmbr_id, const scoped_index &xother_id) const |
True if id xother_id is join equivalent to id xmbr_id. More... | |
virtual pod_index_type | greatest_jem (pod_index_type xmbr_hub_id) const |
The hub id of the largest member which is join-equivalent to hub id xmbr_hub_id. More... | |
void | greatest_jem (const scoped_index &xmbr_id, scoped_index &result) const |
The id of the largest member which is join-equivalent to id xmbr_id. More... | |
virtual pod_index_type | least_jem (pod_index_type xmbr_hub_id) const |
The hub id of the smallest member which is join-equivalent to hub id xmbr_hub_id. More... | |
void | least_jem (const scoped_index &xmbr_id, scoped_index &result) const |
The id of the smallest member which is join-equivalent to id xmbr_id. More... | |
void | link_greatest_jem (pod_index_type xjem1, pod_index_type xjem2) |
Makes hub id xjem1 the greatest jem of hub id xjem2, unless the current greatest jem of xjem2 is top, in which case it makes top the greatest jem of xjem1. More... | |
void | link_greatest_jem (const scoped_index &xjem1, const scoped_index &xjem2) |
Makes id xjem1 the greatest jem of id xjem2, unless the current greatest jem of xjem2 is top, in which case it makes top the greatest jem of xjem1. More... | |
void | link_least_jem (pod_index_type xjem1, pod_index_type xjem2) |
Makes hub id xjem1 the least jem of hub id xjem2, unless the current least jem of xjem2 is bottom, in which case it makes bottom the least jem of xjem1. More... | |
void | link_least_jem (const scoped_index &xjem1, const scoped_index &xjem2) |
Makes id xjem1 the least jem of id xjem2, unless the current least jem of xjem2 is bottom, in which case it makes bottom the least jem of xjem1. More... | |
virtual void | merge_jems (pod_index_type xjem1, pod_index_type xjem2) |
Merge the join-equivalence class of hub id xjem2 under that of hub id xjem1. More... | |
void | merge_jems (const scoped_index &xjem1, const scoped_index &xjem2) |
Merge the join-equivalence class of id xjem2 under that of id xjem1. More... | |
virtual std::string | subposet_name (pod_index_type xsubposet_hub_id, bool xauto_access=false) const |
A name for the subposet with hub id xsubposet_hub_id. More... | |
std::string | subposet_name (const scoped_index &xsubposet_id, bool xauto_access=false) const |
A name for the subposet with id xsubposet_id. More... | |
void | all_subposet_names (pod_index_type xsubposet_hub_id, block< std::string > &xresult, bool xauto_access=false) const |
All the names for the subposet with hub id xsubposet_hub_id. More... | |
void | all_subposet_names (const scoped_index &xsubposet_id, block< std::string > &xresult, bool xauto_access=false) const |
All the names for the subposet with id xsubposet_id. More... | |
size_type | subposet_name_ct (pod_index_type xsubposet_hub_id, bool xauto_access) const |
The number of names for the subposet with hub id xsubposet_hub_id. More... | |
size_type | subposet_name_ct (const scoped_index &xsubposet_id, bool xauto_access) const |
The number of names for the subposet with id xsubposet_id. More... | |
bool | subposet_has_name (pod_index_type xsubposet_hub_id, const std::string &xname, bool xauto_access=false) const |
True if xname is a name for the subposet with hub id xsubposet_hub_id. More... | |
bool | subposet_has_name (const scoped_index &xsubposet_id, const std::string &xname, bool xauto_access=false) const |
True if xname is a name for the subposet with id xsubposet_id. More... | |
virtual void | put_subposet_name (pod_index_type xsubposet_hub_id, const std::string &xname, bool xunique, bool xauto_access) |
Make xname a name for the subposet with hub id xsubposet_hub_id; if xunique, make xname the only name. More... | |
void | put_subposet_name (const scoped_index &xsubposet_id, const std::string &xname, bool xunique, bool xauto_access) |
Make xname a name for the subposet with id xsubposet_id; if xunique, make xname the only name. More... | |
void | delete_subposet_name (const std::string &xname, bool xauto_access=false) |
Make xname not a name for any subposet. More... | |
void | delete_all_subposet_names (pod_index_type xsubposet_hub_id, bool xauto_access=false) |
Delete all names for the subposet with hub id xsubposet_hub_id;. More... | |
void | delete_all_subposet_names (const scoped_index &xsubposet_id, bool xauto_access=false) |
Delete all names for the subposet with id xsubposet_id;. More... | |
const index_space_family & | subposet_id_spaces (bool xauto_access) const |
Collection of subposet id spaces for this (const version). More... | |
index_space_family & | subposet_id_spaces (bool xauto_access) |
Collection of subposet id spaces for this (mutable version). More... | |
const hub_index_space_handle & | subposet_hub_id_space (bool xauto_access) const |
The subposet hub id space. More... | |
virtual const scoped_index & | subposet_id (bool xauto_access) const |
An id in the subposet hub id space; intended for copying to initialize ids to the subposet id space. More... | |
scoped_index | subposet_id (pod_index_type xid, bool xauto_access) const |
An id in the subposet hub id space with pod xid. More... | |
virtual poset_dof_map & | row_dof_map (pod_index_type xtuple_hub_id, bool xrequire_write_access=false) const |
The map from row dof client_ids to row dof values for dof tuple hub id xtuple_hub_id. More... | |
poset_dof_map & | row_dof_map (const scoped_index &xtuple_id, bool xrequire_write_access=false) const |
The map from row dof client_ids to row dof values for dof tuple id xtuple_id. More... | |
virtual const scoped_index & | new_row_dof_map () |
Creates a new row dof map. More... | |
virtual const scoped_index & | clone_row_dof_map (const poset_dof_map &xprototype) |
Creates a new row dof map which is a clone of xprototype. More... | |
poset_dof_map & | member_dof_map (pod_index_type xmbr_hub_id, bool xrequire_write_access=false) |
The dof map associated with the member identified by hub id xmbr_hub_id (mutable version). More... | |
poset_dof_map & | member_dof_map (const scoped_index &xmbr_id, bool xrequire_write_access=false) |
The dof map associated with the member identified by xmbr_index (mutable version). More... | |
const poset_dof_map & | member_dof_map (pod_index_type xmbr_hub_id, bool xrequire_write_access=false) const |
The dof map associated with the member identified by hub id xmbr_hub_id (const version). More... | |
const poset_dof_map & | member_dof_map (const scoped_index &xmbr_id, bool xrequire_write_access=false) const |
The dof map associated with the member identified by xmbr_index (const version). More... | |
void | member_dof_tuple (pod_index_type xmbr_hub_id, void *xbuf, size_t xbuf_len, bool xauto_access) const |
Copies the dof tuple of the member with hub id xmbr_hub_id into the buffer xbuf of length xbuf_len bytes. More... | |
void | put_member_dof_tuple (pod_index_type xmbr_hub_id, void *xbuf, size_t xbuf_len, bool xauto_access) |
Copies the contents of the buffer xbuf of len xbuf_len into the dof tuple of the member with hub id xmbr_hub_id. More... | |
pod_index_type | member_dof_tuple_id (pod_index_type xmbr_hub_id, bool xauto_access) const |
The dof tuple hub id of the member with hub id xmbr_hub_id. More... | |
void | member_dof_tuple_id (const scoped_index &xmbr_id, scoped_index &result, bool xauto_access) const |
The dof tuple index of the member with id xmbr_id. More... | |
void | put_member_dof_tuple_id (pod_index_type xmbr_hub_id, pod_index_type xtuple_hub_id, bool xauto_access) |
Sets the dof tuple hub id of the member with hub id xmbr_hub_id to xtuple_hub_id. More... | |
void | put_member_dof_tuple_id (const scoped_index &xmbr_id, const scoped_index &xtuple_id, bool xauto_access) |
Sets the dof tuple id of the member with id xmbr_id to xtuple_id. More... | |
bool | contains_row_dof_tuple (pod_index_type xtuple_hub_id) const |
True if this contains a tuple with hub id xtuple_hub_id. More... | |
bool | contains_row_dof_tuple (const scoped_index &xtuple_id) const |
True if this contains a tuple with id xtuple_id. More... | |
size_type | row_dof_tuple_ct () const |
The number of row_dof_tuples of this poset. More... | |
int | standard_row_dof_tuple_ct () const |
The number of standard row_dof_tuples automatically allocated by the constructor. More... | |
bool | has_standard_row_dof_tuple_ct () const |
True if poset is in its initial state, that is, it contains just the standard row_dof_tuples. More... | |
const index_space_family & | dof_tuple_id_spaces (bool xauto_access) const |
Collection of dof tuple id spaces for this (const version). More... | |
index_space_family & | dof_tuple_id_spaces (bool xauto_access) |
Collection of dof tuple id spaces for this (mutable version). More... | |
const hub_index_space_handle & | dof_tuple_hub_id_space (bool xauto_access) const |
The dof tuple hub id space. More... | |
virtual const scoped_index & | dof_tuple_id (bool xauto_access) const |
An id in the dof tuple hub id space; intended for copying to initialize ids to the dof tuple id space. More... | |
scoped_index | dof_tuple_id (pod_index_type xid, bool xauto_access) const |
An id in the dof tuple hub id space with pod xid. More... | |
virtual schema_poset_member * | new_schema_handle (const std::string &xid_space_name, pod_index_type xschema_member_ext_id, pod_index_type xbase_space_ext_id, pod_index_type xfiber_schema_ext_id, pod_index_type xlocal_schema_ext_id) |
Creates a member handle of the type appropriate for members of this when used as a schema. Intended for use only by the i/o subsystem. /. More... | |
virtual index_iterator * | get_decomposition (pod_index_type xindex) const |
An iterator over the members of the decomposition identified by xindex. /. More... | |
index_iterator * | bound_iterator (const poset_bounds &xbnd_id, bool xis_ub) const |
An iterator for the upper bound (xis_ub == true) or the lower bound (xis_ub == false) for xbounds. More... | |
bool | bound_contains_member (const poset_bounds &xbounds, bool xis_ub, const scoped_index &xindex) const |
True if the upper bound id (xis_ub == true) or the lower bound (xis_ub == false) of xbounds contains the member specified by xindex. More... | |
pod_index_type | get_int_id (pod_index_type xext_id, const std::string &xid_space_name, bool xauto_access) const |
Translates xext_id to an internal id using the equivalence map with name xid_space_name. More... | |
virtual bool | is_valid_int_id (pod_index_type xint_id, const std::string &xid_space_name, bool xauto_access) const |
True if xint_id can be translated to an external id using the equivalence map with name xid_space_name. More... | |
bool | is_valid_int_id (const scoped_index &xint_id, const std::string &xid_space_name, bool xauto_access) const |
True if xint_id can be translated to an external id using the equivalence map with name xid_space_name. More... | |
virtual pod_index_type | get_ext_id (pod_index_type xint_id, const std::string &xid_space_name, bool xauto_access) const |
Translates xint_id to an external id using the equivalence map with name xid_space_name. More... | |
pod_index_type | get_ext_id (const scoped_index &xint_id, const std::string &xid_space_name, bool xauto_access) const |
Translates xint_id to an external id using the equivalence map with name xid_space_name. More... | |
void | to_stream (std::ostream &xos=std::cout) |
Write instance information to an ostream (default = stdout). More... | |
std::string | to_string () |
Get instance information as a string. More... | |
Public Member Functions inherited from sheaf::read_write_monitor_handle | |
virtual | ~read_write_monitor_handle () |
Descturctor. More... | |
bool | state_is_read_only_accessible () const |
True if this is attached and the state is accessible for read access but not for write. More... | |
bool | state_is_not_read_only_accessible () const |
True if this is attached and the state is not accessible for read only access. More... | |
bool | state_is_read_accessible () const |
True if this is attached and if the state is accessible for read or access control is disabled. More... | |
bool | state_is_not_read_accessible () const |
True if this is attached and if the state is accessible for read or if access control is disabled. More... | |
bool | state_is_auto_read_accessible (bool xauto_access) const |
True if the state is auto accessible for read, that is, if the state is already accessible for read or if this is attached and xuto_access is true. More... | |
bool | state_is_read_write_accessible () const |
True if this is attached and if the state is accessible for read and write or access control is disabled. More... | |
bool | state_is_not_read_write_accessible () const |
True if state is attached and if not accessible for read and write or access control is disabled. More... | |
bool | state_is_auto_read_write_accessible (bool xauto_access) const |
True if state is auto accessible for read and write, that is, if the state is already accessible for read and write or if this is attached and xuto_access is true. or if this is attached and access control is disabled. More... | |
int | access_request_depth () const |
The number of times access has been requested and granted without being released. More... | |
bool | state_is_mode_locked () const |
Obsolete. More... | |
int | mode_lock_ct () const |
Obsolete. More... | |
void | get_mode_lock () const |
Obsolete. More... | |
void | release_mode_lock () |
Obsolete. More... | |
bool | state_is_modified () const |
True if write access has been granted and released since the last call to clear_state_is_modified(). More... | |
void | clear_state_is_modified () |
Sets the state_is_modified floag to false. More... | |
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... | |
Static Public Member Functions inherited from sheaf::poset | |
static poset & | new_table (namespace_type &xhost, const poset_path &xpath, const poset_path &xschema_path, bool xauto_access) |
Creates a new poset in namespace xns with path xpath and schema specified by xschema_path. More... | |
Static Public Member Functions inherited from sheaf::poset_state_handle | |
static const std::string & | coarsest_common_refinement_name () |
The name of the coarsest common refinement subposet. More... | |
Static Public Member Functions inherited from sheaf::read_write_monitor_handle | |
static bool | access_control_disabled () |
True if access control mechanism is disabled. Default value is enabled (false) and access is controlled by the per-thread access control functions. Disabled (true) is equivalent to having read-write access at all times, irrespective of any access control requests. Synonym for read_write_monitor::access_control_disabled(). More... | |
static void | enable_access_control () |
Enables access control. Synonym for read_write_monitor::enable_access_control(). Should only be invoked once at beginning of a program, before any other SheafSystem calls. Once enabled, access control can not be disabled. More... | |
Protected Types inherited from sheaf::poset_state_handle | |
typedef poset_crg_state::member_name_map_type | member_name_map_type |
The type of the member name map. More... | |
Protected Member Functions inherited from sheaf::poset | |
poset () | |
Default constructor; creates a new poset handle not attached to any state. More... | |
virtual | ~poset () |
Destructor. More... | |
poset (abstract_poset_member *xtop, abstract_poset_member *xbottom) | |
Covariant constructor. More... | |
poset (const poset &xother) | |
Copy constructor; disabled. More... | |
poset & | operator= (const poset_state_handle &xother) |
Assignment operator; disabled. More... | |
virtual void | new_state (const poset_path &xpath, const schema_poset_member &xschema, array_poset_dof_map &xdof_map) |
Creates a new poset state with path xpath, schema xschema and table dof map xdof_map, attaches this to the state. More... | |
Protected Member Functions inherited from sheaf::poset_state_handle | |
member_name_map_type & | member_name_map (bool xrequire_write_access=false) |
The bidirectional map between member indices and names. More... | |
virtual poset_state * | state_obj () const |
State object for this poset. More... | |
void | attach_to_state (const poset_state_handle *xother) |
Attach this handle to the same state as xother. More... | |
virtual void | attach_to_state (const namespace_poset *xhost, pod_index_type xindex) |
Attach this handle to the state associated with the member with index xindex in name space xhost. More... | |
void | attach_to_state (const namespace_poset *xhost, const scoped_index &xindex) |
Attach this handle to the state associated with the member with index xindex in name space xhost. More... | |
virtual void | attach_to_state (const namespace_poset *xhost, const std::string &xname) |
Attach this handle to the state associated with the member with name xname in name space xhost. More... | |
virtual void | attach_to_state (const abstract_poset_member *xmbr) |
Attach this handle to the state with associated with namespace member xmbr. More... | |
virtual void | detach_from_state () |
Detach this handle from its state. More... | |
void | new_state (namespace_poset &xns, const poset_path &xpath, const schema_poset_member &xschema, array_poset_dof_map &xdof_map) |
Creates a new poset state with schema xschema and table dof map xdof_map, attaches this to the state and creates and initializes the associated namespace member. Intended for use by new_table factory methods. More... | |
virtual void | initialize_handle_data_members (const namespace_poset &xns) |
Initializes the handle data members that depend on the table dofs and are required to get access when this handle is used to create a new state. Intended to be called only from new_state and to be redefined in descendants to handle additional data members defined there. More... | |
virtual void | attach_handle_data_members () |
Initializes the handle data members when this handle is attached to a state. Intended to be redefined in descendants to handle additional data members defined there. More... | |
void | ensure_lattice_invariant () |
Restores the lattice invariant after editing jims. More... | |
virtual void | terminate_access () |
Release all access to posets this depends on, then detach and delete the state. More... | |
virtual void | initialize_namespace (namespace_poset &xns, const std::string &xposet_name, bool xauto_link=true) |
Installs this as a member of xns. If xauto_link, automatically links the member into an appropriate group. More... | |
poset_crg_state & | crg () const |
The cover relation graph. More... | |
virtual void | initialize_standard_members () |
Creates the members common to every poset, for instance, top() and bottom(). More... | |
void | put_standard_member_ct (int xct) |
Sets the number of standard members automatically allocated by the constructor. More... | |
void | put_standard_row_dof_tuple_ct (int xct) |
Sets the number of standard row dof tuples automatically allocated by the constructor. More... | |
bool | index_in_bounds (const scoped_index &xmbr_id) const |
True if 0 <= xmbr_id < state_obj()->member_index_ub(). More... | |
bool | index_in_bounds (const block< scoped_index > &indices) const |
True if for all i: 0 <= indices[i] < state_obj()->member_index_ub(). More... | |
virtual void | new_member (pod_index_type xmbr_hub_id, bool xis_jim, const scoped_index &xdof_tuple_id) |
Create a disconnected member with hub id xmbr_hub_id, is_jim == xis_jim and the dof tuple identified by xdof_tuple_id. WARNING: this routine leaves a disconnected member in the poset and hence leaves the poset in an invalid state. The client must properly link the member created by this routine using new_link in order to return the poset to a valid state. More... | |
void | new_member (pod_index_type xmbr_hub_id, bool xis_jim, poset_dof_map *xdof_map, bool xcopy_dof_map) |
Create a disconnected member with hub id xmbr_hub_id and is_jim == xis_jim. If xdof_map != 0, the new member uses it for dof storage, otherwise it creates an instance of array_poset_dof_map. WARNING: this routine leaves a disconnected member in the poset and hence leaves the poset in an invalid state. The client must properly link the member created by this routine using new_link in order to return the poset to a valid state. More... | |
virtual pod_index_type | new_member_interval (const std::string &xinterval_type, size_type xsize) |
Create a disconnected member interval of type xinterval_type with size xsize. More... | |
virtual void | new_member_interval (pod_index_type xmbr_hub_id, const std::string &xinterval_type, size_type xsize) |
Create a disconnected member interval beginning at hub id xmbr_hub_id, of type xinterval_type, and with size xsize. More... | |
virtual subposet & | resident () |
The subset of all members with resident (in memory) dof tuples (mutable version). More... | |
virtual const subposet & | resident () const |
The subset of all members with resident (in memory) dof tuples (const version). More... | |
poset_powerset_state & | powerset () const |
The set of subposets of this poset. More... | |
virtual void | initialize_standard_subposets (const std::string &xname) |
Creates the subposets common to every poset (e.g. whole() and jims()). More... | |
void | put_standard_subposet_ct (int xct) |
Sets the number of standard subposets automatically allocated by the constructor. More... | |
poset_state_handle () | |
Default constructor. More... | |
virtual | ~poset_state_handle () |
Destructor. More... | |
poset_state_handle (abstract_poset_member *xtop, abstract_poset_member *xbottom) | |
Covariant constructor. More... | |
poset_state_handle (const poset_state_handle &xother) | |
Copy constructor; disabled. More... | |
poset_state_handle & | operator= (const poset_state_handle &xother) |
Assignment operator; disabled. More... | |
bool | is_version_name (const std::string &xname) const |
True if xname has the proper form for a version name. More... | |
std::string | version_to_name (int xversion) const |
Creates the standard name for the level xversion whole subposet. More... | |
int | version_from_name (const std::string &xname) const |
Extracts the version from the standard name. More... | |
void | put_version (int xversion) |
Set the current level to xversion. More... | |
void | update_standard_member_id_spaces () |
Update the initially allocated id spaces. More... | |
void | clear_member_id_spaces (bool xauto_access) |
Deletes all non-standard id spaces. More... | |
pod_index_type | new_term (size_type xct, bool xauto_access) |
Creates a new term in the member hub id space with xct number of ids. Returns the index of the id space state created. More... | |
void | extend_last_member_term (size_type xct, bool xauto_access) |
Extends the last term of the member hub id space to ct == xct. More... | |
void | transfer_cover (pod_index_type xsrc, pod_index_type xdst, bool lower) |
Transfers the lower cover (lower == true) or the upper cover (lower == false) from the member with hub id xsrc to the member with hub id xdst. More... | |
poset_table_state & | table () const |
The table of dof tuples of this poset. More... | |
void | initialize_table_dofs (void *xtable_dofs, size_t xtable_dof_ub) |
Initializes the table dofs ("class variables") More... | |
void | initialize_table_dof_tuple (array_poset_dof_map *xdof_tuple) |
Installs xdof_tuple as the table dof tuple. More... | |
void | initialize_dof_id_space (subposet &xdof_subposet) |
Initialize the id space for the dof subposet, xdof_subposet. More... | |
Protected Member Functions inherited from sheaf::read_write_monitor_handle | |
bool | access_guards_disabled () const |
True if thread of control is still in constructor. More... | |
void | disable_access_guards () |
Disables access guards; intended for use only within constructors of monitored objects, where no other client can possibly have access (yet). More... | |
void | enable_access_guards () |
Re-enables access guards. More... | |
Protected Member Functions inherited from sheaf::any | |
any () | |
default constructor More... | |
Static Protected Member Functions inherited from sheaf::poset_state_handle | |
static poset_state_handle * | new_poset_handle (const std::string &xclass_name, poset_type xsheaf_base_class_id) |
Creates an unattached handle of type xclass_name, if a prototype of that name exists, otherwise of type xsheaf_base_class_id. More... | |
static poset_handle_factory & | factory () |
The poset handle factory. More... | |
static const std::string & | VERSION_PREFIX () |
The prefix which begins the name of every version subposet. More... | |
static int | VERSION_PREFIX_LENGTH () |
The length of _version_prefix. More... | |
Protected Attributes inherited from sheaf::poset_state_handle | |
poset_state * | _state |
State object for this poset. More... | |
namespace_poset * | _name_space |
The namespace this poset resides in. More... | |
scoped_index | _index |
The member index of this poset in the namespace. More... | |
abstract_poset_member * | _top |
Top member of poset. More... | |
abstract_poset_member * | _bottom |
Bottom members of poset. More... | |
subposet | _resident |
The subposet of members with resident dof tuples. More... | |
A Cartesian product space.
Definition at line 52 of file gln_space.h.
The type of member associated with this space.
Definition at line 68 of file gln_space.h.
The table dofs type defined by the standard schema.
Definition at line 88 of file gln_space.h.
The type of the vector space associated with this space.
Definition at line 73 of file gln_space.h.
|
protected |
Default constructor; creates a new gln_space handle not attached to any state.
Definition at line 409 of file gln_space.cc.
References sheaf::poset::poset(), and ~gln_space().
Referenced by clone(), d(), gln_space(), and ~gln_space().
|
inlineprotected |
Copy constructor; disabled.
Definition at line 169 of file gln_space.h.
|
protectedvirtual |
Destructor.
Definition at line 424 of file gln_space.cc.
References gln_space().
Referenced by gln_space().
Covariant constructor.
Definition at line 438 of file gln_space.cc.
References sheaf::poset_state_handle::factory(), gln_space(), sheaf::poset_handle_factory::insert_prototype(), sheaf::poset_state_handle::poset_state_handle(), and type_id().
|
virtual |
The name of this class.
: Return string&.
: Static version.
Reimplemented from sheaf::poset.
Definition at line 509 of file gln_space.cc.
References prereq_id().
Referenced by type_id().
|
virtual |
Virtual constructor; creates a new handle of the same actual type as this, attached to the same state as this.
Reimplemented from sheaf::poset.
Definition at line 605 of file gln_space.cc.
References gln_space(), invariant(), sheaf::poset_state_handle::is_attached(), and sheaf::any::is_same_type().
Referenced by is_ancestor_of().
|
static |
The dimension of the representation space; n in GL(n, R) implied by the vector space specified by xvector_space_path.
Definition at line 84 of file gln_space.cc.
References d(), sheaf::namespace_poset::member_poset(), and sheaf::namespace_poset::path_is_auto_read_accessible().
Referenced by d(), fiber_bundle::gln::new_host(), fiber_bundle::gl2::new_host(), fiber_bundle::gl3::new_host(), new_table(), fiber_bundle::gl2::standard_host(), and fiber_bundle::gl3::standard_host().
|
static |
The dimension of the representation space; n in GL(n, R) implied by the vector space with dimension specified by xn.
Definition at line 107 of file gln_space.cc.
References new_table().
|
virtual |
Dimension of this as a vector space.
Definition at line 358 of file gln_space.cc.
Referenced by d(), standard_schema_path(), and vector_space_path().
int fiber_bundle::gln_space::d | ( | bool | xauto_access | ) | const |
Dimension of this as a vector space; auto-access version.
Definition at line 379 of file gln_space.cc.
References gln_space().
|
virtual |
Class invariant.
Reimplemented from sheaf::poset.
Definition at line 628 of file gln_space.cc.
References sheaf::any::disable_invariant_check(), sheaf::any::enable_invariant_check(), sheaf::poset::invariant(), and sheaf::any::invariant_check().
Referenced by clone().
|
virtual |
True if other conforms to this.
Reimplemented from sheaf::poset.
Definition at line 586 of file gln_space.cc.
References clone().
Referenced by prereq_id().
int fiber_bundle::gln_space::n | ( | ) | const |
Dimension of the representation space; n in GL(n, R).
Definition at line 202 of file gln_space.cc.
References sheaf::table_dofs().
Referenced by fiber_bundle::gln::new_host(), fiber_bundle::gl2::new_host(), fiber_bundle::gl3::new_host(), new_table(), fiber_bundle::gl2::standard_host(), and fiber_bundle::gl3::standard_host().
int fiber_bundle::gln_space::n | ( | bool | xauto_access | ) | const |
Dimension of the representation space; n in GL(n, R).
Definition at line 223 of file gln_space.cc.
References scalar_space_path().
|
static |
Creates a new tp_space in namespace xns with path xpath, schema specified by xschema_path, and table attribute vector_space_path specified by xvector_space_path.
Definition at line 114 of file gln_space.cc.
References sheaf::namespace_poset::contains_path(), d(), sheaf::poset_path::empty(), sheaf::poset_path::full(), sheaf::poset_component::get_read_access(), sheaf::namespace_poset::member_poset(), n(), sheaf::namespace_poset::owns(), sheaf::poset_component::path(), sheaf::poset_state_handle::path(), sheaf::namespace_poset::path_is_auto_read_accessible(), sheaf::array_poset_dof_map::put_dof(), sheaf::poset_component::release_access(), scalar_space_path(), sheaf::poset_state_handle::schema(), sheaf::read_write_monitor_handle::state_is_auto_read_write_accessible(), sheaf::read_write_monitor_handle::state_is_not_read_accessible(), and vector_space_path().
Referenced by d().
|
inlineprotected |
Assignment operator; disabled.
Definition at line 230 of file gln_space.h.
|
virtual |
The id of the xi-th prerequisite poset for this.
Reimplemented from sheaf::poset_state_handle.
Definition at line 529 of file gln_space.cc.
References sheaf::poset_component::host(), sheaf::poset_state_handle::index(), sheaf::invalid_pod_index(), is_ancestor_of(), sheaf::poset_state_handle::member_id(), sheaf::poset_state_handle::name_space(), sheaf::scoped_index::pod(), sheaf::poset_state_handle::schema(), sheaf::read_write_monitor_handle::state_is_read_accessible(), and vector_space_path().
Referenced by class_name().
sheaf::poset_path fiber_bundle::gln_space::scalar_space_path | ( | ) | const |
The path of the underlying scalar space.
Definition at line 254 of file gln_space.cc.
References sheaf::poset_path::empty(), and sheaf::table_dofs().
Referenced by n(), fiber_bundle::gln::new_host(), fiber_bundle::gl2::new_host(), fiber_bundle::gl3::new_host(), new_table(), fiber_bundle::gl2::standard_host(), and fiber_bundle::gl3::standard_host().
sheaf::poset_path fiber_bundle::gln_space::scalar_space_path | ( | bool | xauto_access | ) | const |
The path of the underlying scalar space.
Definition at line 275 of file gln_space.cc.
References sheaf::poset_path::empty(), sheaf::table_dofs(), and vector_space_path().
|
static |
The path to the standard schema for this class.
Definition at line 63 of file gln_space.cc.
References d(), sheaf::poset_path::full(), and sheaf::poset_path::poset_name().
Referenced by standard_schema_poset_name().
|
static |
The name of the standard schema poset for this class.
Definition at line 42 of file gln_space.cc.
References standard_schema_path().
|
virtual |
Identifier for the type of this poset.
Reimplemented from sheaf::poset.
Definition at line 495 of file gln_space.cc.
References class_name().
Referenced by gln_space().
sheaf::poset_path fiber_bundle::gln_space::vector_space_path | ( | ) | const |
The path of the underlying vector space.
Definition at line 306 of file gln_space.cc.
References sheaf::poset_path::empty(), and sheaf::table_dofs().
Referenced by fiber_bundle::gln::new_host(), fiber_bundle::gl2::new_host(), fiber_bundle::gl3::new_host(), new_table(), prereq_id(), scalar_space_path(), fiber_bundle::gl2::standard_host(), and fiber_bundle::gl3::standard_host().
sheaf::poset_path fiber_bundle::gln_space::vector_space_path | ( | bool | xauto_access | ) | const |
The path of the underlying vector space.
Definition at line 327 of file gln_space.cc.
References d(), sheaf::poset_path::empty(), and sheaf::table_dofs().