SheafSystem
0.0.0.0
|
A collection of id space states. This is a virtual class with provides an interface for accessing the id space states via the collection's local indexing. More...
#include <index_space_collection.h>
Friends | |
class | explicit_index_space_handle |
class | explicit_index_space_iterator |
class | index_space_family |
INDEX_SPACE_COLLECTION FACET | |
typedef pod_index_type | pod_type |
The "plain old data" index type for this. More... | |
virtual | ~index_space_collection () |
Destructor. More... | |
virtual bool | operator== (const index_space_collection &xother) const =0 |
True if this is equivalent to xother. More... | |
virtual bool | contains (pod_type xlocal_id) const =0 |
True if this collection contains the id space with local id xlocal_id. More... | |
virtual bool | contains_family (pod_type xspace_id) const =0 |
True if this collection contains the id space with family id xspace_id. More... | |
virtual pod_type | local_scope (pod_type xspace_id) const =0 |
Id relative to this collection equivalent to the id space family id xspace_id. More... | |
virtual pod_type | family_scope (pod_type xlocal_id) const =0 |
Id relative to the id space family equivalent to the local id xlocal_id. More... | |
virtual size_type | deep_size (bool xinclude_shallow) const =0 |
The deep size of this. More... | |
index_space_collection () | |
Default constructor. More... | |
index_space_collection (const index_space_collection &xother) | |
Copy constructor; disabled. More... | |
virtual index_space_collection & | operator= (const index_space_collection &xother)=0 |
Assignment operator. More... | |
virtual explicit_index_space_state * | explicit_state (pod_type xlocal_id) const =0 |
The explicit id space state for id xlocal_id. Returns null if there is no explicit id space for xlocal_id. More... | |
INDEX SPACE FACET | |
virtual const index_space_family & | id_spaces () const =0 |
The id space family for this (const version). More... | |
virtual index_space_family & | id_spaces ()=0 |
The id space family for this (mutable version). More... | |
const hub_index_space_handle & | hub_id_space () const |
The hub id space. More... | |
virtual void | remove (pod_type xlocal_id)=0 |
Remove the id space with id xlocal_id. More... | |
virtual size_type | ct (pod_type xlocal_id) const =0 |
The number of members for the id space with id xlocal_id. More... | |
bool | is_empty (pod_type xlocal_id) const |
True if there are no ids in the space with id xlocal_id. More... | |
virtual pod_type | begin (pod_type xlocal_id) const =0 |
Beginning id of the space with id xlocal_id. More... | |
virtual pod_type | end (pod_type xlocal_id) const =0 |
Ending id of the space with id xlocal_id. More... | |
bool | is_gathered (pod_type xlocal_id) const |
True if begin(xlocal_id) == 0 and end(xlocal_id) == ct(xlocal_id). More... | |
virtual bool | contains (pod_type xlocal_id, pod_type xid) const =0 |
True if the space with id xlocal_id contains id xid. More... | |
bool | contains (pod_type xlocal_id, const scoped_index &xid) const |
True if the space with id xlocal_id contains an id equivalent to xid. synonym for contains_hub(xlocal_id, xid.hub_pod()). More... | |
bool | contains_hub (pod_type xlocal_id, pod_type xid) const |
True if the space with id xlocal_id contains an id equivalent to xid in the hub id space. synonym for contains_unglued_hub(xlocal_id, xid) More... | |
virtual bool | contains_unglued_hub (pod_type xlocal_id, pod_type xid) const =0 |
True if the space with id xlocal_id contains an id equivalent to xid in the unglued hub id space. More... | |
bool | contains_glued_hub (pod_type xlocal_id, pod_type xid) const |
True if the space with id xlocal_id contains an id equivalent to xid in the glued hub id space. More... | |
bool | contains (pod_type xlocal_id, pod_type xid, const scoped_index &xhub_id) const |
True if the space with id xlocal_id contains an id xid equivalent to xhub_id in the hub id space. synonym for contains(xlocal_id, xid, xhub_id.hub_pod()). More... | |
virtual bool | contains (pod_type xlocal_id, pod_type xid, pod_type xhub_id) const =0 |
True if the space with id xlocal_id contains an id xid equivalent to xhub_id in the hub id space. More... | |
virtual pod_type | pod (pod_type xlocal_id, pod_type xid) const =0 |
The pod index in the space with id xlocal_id equivalent to xid in the hub id space. More... | |
pod_type | pod (pod_type xlocal_id, const scoped_index &xid) const |
The pod index in the space with id xlocal_id equivalent to xid. synonym for pod(xlocal_id, id.hub_pod()). More... | |
pod_type | hub_pod (pod_type xlocal_id, pod_type xid) const |
The pod index in the glued hub id space equivalent to xid in the id space with id xlocal_id. synonym for unglued_hub_pod(xlocal_id, xid). More... | |
virtual pod_type | unglued_hub_pod (pod_type xlocal_id, pod_type xid) const =0 |
The pod index in the glued hub id space equivalent to xid in the id space with id xlocal_id. More... | |
pod_type | glued_hub_pod (pod_type xlocal_id, pod_type xid) const |
The pod index in the unglued hub id space equivalent to xid in the id space with id xlocal_id. More... | |
virtual bool | is_persistent (pod_type xlocal_id) const =0 |
True if the id space with id xlocal_id should be written to disk. More... | |
PRODUCT STRUCTURE FACET | |
virtual void | new_product_structure (pod_type xlocal_id, const abstract_product_structure &xproduct)=0 |
Creates a new product structure for the id space with id xlocal_id by cloning the product structure, xproduct. More... | |
virtual void | delete_product_structure (pod_type xlocal_id)=0 |
Deletes the product structure for the id space with id xlocal_id. More... | |
virtual const abstract_product_structure & | product_structure (pod_type xlocal_id) const =0 |
The product structure for the id space with id xlocal_id (const version). More... | |
virtual abstract_product_structure & | product_structure (pod_type xlocal_id)=0 |
The product structure for the id space with id xlocal_id (mutable version). More... | |
virtual bool | has_product_structure (pod_type xlocal_id) const =0 |
True if the id space with id xlocal_id has a product structure. More... | |
HANDLE POOL FACET | |
virtual index_space_handle & | get_id_space (pod_type xlocal_id) const =0 |
Allocates an id space handle from the handle pool attached to state with id xlocal_id. More... | |
virtual void | release_id_space (index_space_handle &xid_space) const =0 |
Returns the id space handle xid_space to the handle pool. More... | |
virtual bool | allocated_id_space (const index_space_handle &xid_space) const =0 |
True if and only if id space handle xid_space was allocated by the handle pool. More... | |
ITERATOR POOL FACET | |
virtual index_space_iterator & | get_id_space_iterator (pod_type xlocal_id) const =0 |
Allocates an id space iterator from the iterator pool attached to state with id xlocal_id. More... | |
virtual void | release_id_space_iterator (index_space_iterator &xitr) const =0 |
Returns the id space iterator xitr to the iterator pool. More... | |
virtual bool | allocated_id_space_iterator (const index_space_iterator &xitr) const =0 |
True if and only if id space iterator xitr was allocated by the iterator pool. More... | |
ANY FACET | |
virtual bool | is_ancestor_of (const any *other) const |
Conformance test; true if other conforms to this. 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 * | clone () const |
Virtual constructor, makes a new instance of 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... | |
A collection of id space states. This is a virtual class with provides an interface for accessing the id space states via the collection's local indexing.
Definition at line 52 of file index_space_collection.h.
The "plain old data" index type for this.
Definition at line 69 of file index_space_collection.h.
|
virtual |
|
protected |
Default constructor.
Definition at line 181 of file index_space_collection.cc.
References invariant(), and operator=().
Referenced by deep_size().
|
inlineprotected |
Copy constructor; disabled.
Definition at line 116 of file index_space_collection.h.
|
pure virtual |
True if and only if id space handle xid_space was allocated by the handle pool.
Is Abstract.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, sheaf::array_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, sheaf::ragged_array_index_space_interval, sheaf::explicit_index_space_interval, fiber_bundle::i_connectivity_index_space_interval, sheaf::constant_index_space_interval, sheaf::singleton_index_space_interval, and sheaf::explicit_index_space_collection.
Definition at line 889 of file index_space_collection.cc.
References get_id_space_iterator().
Referenced by sheaf::index_space_interval_iterator::allocated_id_space(), sheaf::forwarding_index_space_handle::allocated_id_space(), and release_id_space().
|
pure virtual |
True if and only if id space iterator xitr was allocated by the iterator pool.
Is Abstract.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, sheaf::array_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, sheaf::ragged_array_index_space_interval, sheaf::explicit_index_space_interval, fiber_bundle::i_connectivity_index_space_interval, sheaf::constant_index_space_interval, sheaf::singleton_index_space_interval, and sheaf::explicit_index_space_collection.
Definition at line 965 of file index_space_collection.cc.
References is_ancestor_of().
Referenced by sheaf::index_space_interval_iterator::allocated_id_space_iterator(), sheaf::forwarding_index_space_handle::allocated_iterator(), and release_id_space_iterator().
|
pure virtual |
Beginning id of the space with id xlocal_id.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 355 of file index_space_collection.cc.
References contains(), and end().
Referenced by sheaf::forwarding_index_space_handle::begin(), sheaf::index_space_family::begin(), sheaf::index_space_family::hub_begin(), is_empty(), and is_gathered().
|
pure virtual |
True if this collection contains the id space with local id xlocal_id.
Is Abstract.
Implemented in sheaf::explicit_index_space_interval.
Definition at line 75 of file index_space_collection.cc.
References contains_family().
Referenced by sheaf::implicit_index_space_iterator::attach_to(), sheaf::explicit_index_space_iterator::attach_to(), sheaf::constant_implicit_index_space_iterator::attach_to(), sheaf::singleton_implicit_index_space_iterator::attach_to(), sheaf::array_implicit_index_space_iterator::attach_to(), fiber_bundle::i_connectivity_implicit_index_space_iterator::attach_to(), sheaf::ragged_array_implicit_index_space_iterator::attach_to(), fiber_bundle::ij_connectivity_implicit_index_space_iterator::attach_to(), fiber_bundle::i_adjacency_implicit_index_space_iterator::attach_to(), fiber_bundle::ijk_connectivity_implicit_index_space_iterator::attach_to(), fiber_bundle::ij_adjacency_implicit_index_space_iterator::attach_to(), fiber_bundle::ijk_adjacency_implicit_index_space_iterator::attach_to(), sheaf::index_space_iterator::attach_to(), sheaf::forwarding_index_space_handle::attach_to(), sheaf::explicit_index_space_handle::attach_to(), sheaf::index_space_handle::attach_to(), begin(), sheaf::primitives_index_space_handle::conforms_to_state(), sheaf::explicit_index_space_iterator::conforms_to_state(), sheaf::primary_index_space_handle::conforms_to_state(), sheaf::hash_index_space_handle::conforms_to_state(), sheaf::singleton_index_space_handle::conforms_to_state(), sheaf::array_index_space_handle::conforms_to_state(), sheaf::offset_index_space_handle::conforms_to_state(), sheaf::scattered_insertion_index_space_handle::conforms_to_state(), sheaf::reserved_primary_index_space_handle::conforms_to_state(), fiber_bundle::section_space_schema_jims_index_space_handle::conforms_to_state(), sheaf::gathered_insertion_index_space_handle::conforms_to_state(), sheaf::list_index_space_handle::conforms_to_state(), sheaf::sum_index_space_handle::conforms_to_state(), sheaf::forwarding_index_space_handle::conforms_to_state(), sheaf::explicit_index_space_handle::conforms_to_state(), sheaf::index_space_iterator::conforms_to_state(), sheaf::interval_index_space_handle::conforms_to_state(), sheaf::hub_index_space_handle::conforms_to_state(), sheaf::index_space_handle::conforms_to_state(), sheaf::forwarding_index_space_handle::contains(), contains(), sheaf::index_space_family::contains(), contains_glued_hub(), contains_hub(), contains_unglued_hub(), ct(), delete_product_structure(), end(), get_id_space(), get_id_space_iterator(), glued_hub_pod(), has_product_structure(), hub_pod(), is_empty(), is_gathered(), is_persistent(), local_scope(), new_product_structure(), operator==(), pod(), product_structure(), sheaf::explicit_index_space_iterator::state(), sheaf::explicit_index_space_handle::state(), and unglued_hub_pod().
|
pure virtual |
True if the space with id xlocal_id contains id xid.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 422 of file index_space_collection.cc.
References contains().
bool sheaf::index_space_collection::contains | ( | pod_type | xlocal_id, |
const scoped_index & | xid | ||
) | const |
True if the space with id xlocal_id contains an id equivalent to xid. synonym for contains_hub(xlocal_id, xid.hub_pod()).
Definition at line 445 of file index_space_collection.cc.
References contains(), contains_hub(), and sheaf::scoped_index::hub_pod().
bool sheaf::index_space_collection::contains | ( | pod_type | xlocal_id, |
pod_type | xid, | ||
const scoped_index & | xhub_id | ||
) | const |
True if the space with id xlocal_id contains an id xid equivalent to xhub_id in the hub id space. synonym for contains(xlocal_id, xid, xhub_id.hub_pod()).
Definition at line 532 of file index_space_collection.cc.
References contains(), and sheaf::scoped_index::hub_pod().
|
pure virtual |
True if the space with id xlocal_id contains an id xid equivalent to xhub_id in the hub id space.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 553 of file index_space_collection.cc.
References contains(), and pod().
|
pure virtual |
True if this collection contains the id space with family id xspace_id.
Is Abstract.
Implemented in sheaf::explicit_index_space_interval.
Definition at line 96 of file index_space_collection.cc.
References local_scope().
Referenced by contains(), sheaf::index_space_family::contains(), and family_scope().
True if the space with id xlocal_id contains an id equivalent to xid in the glued hub id space.
Definition at line 510 of file index_space_collection.cc.
References contains(), contains_unglued_hub(), hub_id_space(), and unglued_hub_pod().
Referenced by sheaf::forwarding_index_space_handle::contains_glued_hub(), sheaf::index_space_interval_iterator::contains_glued_hub(), contains_unglued_hub(), and glued_hub_pod().
True if the space with id xlocal_id contains an id equivalent to xid in the hub id space. synonym for contains_unglued_hub(xlocal_id, xid)
Definition at line 466 of file index_space_collection.cc.
References contains(), and contains_unglued_hub().
Referenced by contains(), sheaf::index_space_interval_iterator::contains_hub(), hub_pod(), sheaf::constant_index_space_interval::pod(), and sheaf::singleton_index_space_interval::pod().
|
pure virtual |
True if the space with id xlocal_id contains an id equivalent to xid in the unglued hub id space.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 487 of file index_space_collection.cc.
References contains(), and contains_glued_hub().
Referenced by contains_glued_hub(), contains_hub(), sheaf::forwarding_index_space_handle::contains_unglued_hub(), sheaf::index_space_interval_iterator::contains_unglued_hub(), sheaf::index_space_family::contains_unglued_hub(), and unglued_hub_pod().
|
pure virtual |
The number of members for the id space with id xlocal_id.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 311 of file index_space_collection.cc.
References contains(), and is_empty().
Referenced by sheaf::forwarding_index_space_handle::ct(), sheaf::index_space_interval_iterator::ct(), sheaf::index_space_family::ct(), hub_id_space(), is_empty(), and is_gathered().
|
pure virtual |
The deep size of this.
Is Abstract.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, sheaf::array_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, sheaf::ragged_array_index_space_interval, sheaf::explicit_index_space_interval, fiber_bundle::i_connectivity_index_space_interval, sheaf::constant_index_space_interval, and sheaf::singleton_index_space_interval.
Definition at line 159 of file index_space_collection.cc.
References index_space_collection().
Referenced by family_scope().
|
pure virtual |
Deletes the product structure for the id space with id xlocal_id.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 742 of file index_space_collection.cc.
References contains(), has_product_structure(), and product_structure().
Referenced by sheaf::index_space_family::delete_product_structure(), and new_product_structure().
|
pure virtual |
Ending id of the space with id xlocal_id.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 378 of file index_space_collection.cc.
References contains(), and is_gathered().
Referenced by begin(), sheaf::forwarding_index_space_handle::end(), sheaf::index_space_family::end(), and is_gathered().
|
protectedpure virtual |
The explicit id space state for id xlocal_id. Returns null if there is no explicit id space for xlocal_id.
Is Abstract.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 220 of file index_space_collection.cc.
References id_spaces().
Referenced by sheaf::explicit_index_space_iterator::attach_to(), sheaf::explicit_index_space_iterator::conforms_to_state(), sheaf::index_space_family::delete_state(), operator=(), sheaf::explicit_index_space_iterator::state(), and sheaf::explicit_index_space_handle::state().
|
pure virtual |
Id relative to the id space family equivalent to the local id xlocal_id.
Is Abstract.
Definition at line 138 of file index_space_collection.cc.
References contains_family(), deep_size(), and sheaf::is_valid().
Referenced by sheaf::explicit_index_space_iterator::attach_to(), sheaf::constant_implicit_index_space_iterator::attach_to(), sheaf::singleton_implicit_index_space_iterator::attach_to(), sheaf::array_implicit_index_space_iterator::attach_to(), sheaf::ragged_array_implicit_index_space_iterator::attach_to(), fiber_bundle::i_connectivity_implicit_index_space_iterator::attach_to(), fiber_bundle::ij_connectivity_implicit_index_space_iterator::attach_to(), fiber_bundle::i_adjacency_implicit_index_space_iterator::attach_to(), fiber_bundle::ijk_connectivity_implicit_index_space_iterator::attach_to(), fiber_bundle::ij_adjacency_implicit_index_space_iterator::attach_to(), fiber_bundle::ijk_adjacency_implicit_index_space_iterator::attach_to(), sheaf::index_space_iterator::attach_to(), sheaf::forwarding_index_space_handle::attach_to(), sheaf::explicit_index_space_handle::attach_to(), sheaf::index_space_handle::attach_to(), sheaf::implicit_index_space_iterator::index(), sheaf::forwarding_index_space_handle::index(), and local_scope().
|
pure virtual |
Allocates an id space handle from the handle pool attached to state with id xlocal_id.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 845 of file index_space_collection.cc.
References contains(), sheaf::index_space_handle::is_attached(), and release_id_space().
Referenced by sheaf::index_space_interval_iterator::get_id_space(), sheaf::forwarding_index_space_handle::get_id_space(), sheaf::index_space_family::get_id_space(), and has_product_structure().
|
pure virtual |
Allocates an id space iterator from the iterator pool attached to state with id xlocal_id.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 921 of file index_space_collection.cc.
References contains(), sheaf::index_space_iterator::is_attached(), and release_id_space_iterator().
Referenced by allocated_id_space(), sheaf::index_space_interval_iterator::get_id_space_iterator(), sheaf::index_space_family::get_id_space_iterator(), and sheaf::forwarding_index_space_handle::get_iterator().
sheaf::index_space_collection::pod_type sheaf::index_space_collection::glued_hub_pod | ( | pod_type | xlocal_id, |
pod_type | xid | ||
) | const |
The pod index in the unglued hub id space equivalent to xid in the id space with id xlocal_id.
Definition at line 664 of file index_space_collection.cc.
References contains(), contains_glued_hub(), sheaf::explicit_index_space_handle::glued_hub_pod(), hub_id_space(), is_persistent(), sheaf::is_valid(), and unglued_hub_pod().
Referenced by sheaf::forwarding_index_space_handle::glued_hub_pod(), sheaf::index_space_interval_iterator::glued_hub_pod(), and unglued_hub_pod().
|
pure virtual |
True if the id space with id xlocal_id has a product structure.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 811 of file index_space_collection.cc.
References contains(), and get_id_space().
Referenced by delete_product_structure(), sheaf::forwarding_index_space_handle::has_product_structure(), sheaf::index_space_family::has_product_structure(), new_product_structure(), and product_structure().
const sheaf::hub_index_space_handle & sheaf::index_space_collection::hub_id_space | ( | ) | const |
The hub id space.
Definition at line 292 of file index_space_collection.cc.
References ct(), sheaf::index_space_family::hub_id_space(), and id_spaces().
Referenced by contains_glued_hub(), glued_hub_pod(), and id_spaces().
sheaf::index_space_collection::pod_type sheaf::index_space_collection::hub_pod | ( | pod_type | xlocal_id, |
pod_type | xid | ||
) | const |
The pod index in the glued hub id space equivalent to xid in the id space with id xlocal_id. synonym for unglued_hub_pod(xlocal_id, xid).
Definition at line 620 of file index_space_collection.cc.
References contains(), contains_hub(), sheaf::is_valid(), and unglued_hub_pod().
Referenced by fiber_bundle::i_adjacency_index_space_interval::contains(), fiber_bundle::ij_connectivity_index_space_interval::contains(), fiber_bundle::ij_adjacency_index_space_interval::contains(), fiber_bundle::ijk_connectivity_index_space_interval::contains(), fiber_bundle::ijk_adjacency_index_space_interval::contains(), fiber_bundle::i_connectivity_index_space_interval::contains_unglued_hub(), sheaf::index_space_family::hub_begin(), sheaf::index_space_interval_iterator::hub_pod(), pod(), and sheaf::index_space_family::unglued_hub_pod().
|
pure virtual |
The id space family for this (const version).
Is Abstract.
Implemented in sheaf::index_space_interval, and sheaf::explicit_index_space_collection.
Definition at line 250 of file index_space_collection.cc.
Referenced by explicit_state(), hub_id_space(), sheaf::forwarding_index_space_handle::id_spaces(), sheaf::explicit_index_space_state::id_spaces(), and sheaf::index_space_iterator::id_spaces().
|
pure virtual |
The id space family for this (mutable version).
Is Abstract.
Implemented in sheaf::index_space_interval, and sheaf::explicit_index_space_collection.
Definition at line 271 of file index_space_collection.cc.
References hub_id_space().
|
virtual |
Class invariant.
Reimplemented from sheaf::any.
Reimplemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, sheaf::array_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, sheaf::ragged_array_index_space_interval, fiber_bundle::i_connectivity_index_space_interval, sheaf::constant_index_space_interval, sheaf::singleton_index_space_interval, sheaf::explicit_index_space_interval, sheaf::explicit_index_space_collection, and sheaf::index_space_interval.
Definition at line 1018 of file index_space_collection.cc.
References sheaf::any::disable_invariant_check(), sheaf::any::enable_invariant_check(), sheaf::any::invariant(), and sheaf::any::invariant_check().
Referenced by index_space_collection(), sheaf::index_space_interval::invariant(), sheaf::explicit_index_space_collection::invariant(), is_ancestor_of(), and operator=().
|
virtual |
Conformance test; true if other conforms to this.
Reimplemented from sheaf::any.
Reimplemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, sheaf::array_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, sheaf::ragged_array_index_space_interval, fiber_bundle::i_connectivity_index_space_interval, sheaf::constant_index_space_interval, sheaf::singleton_index_space_interval, sheaf::explicit_index_space_interval, sheaf::explicit_index_space_collection, and sheaf::index_space_interval.
Definition at line 997 of file index_space_collection.cc.
References invariant().
Referenced by allocated_id_space_iterator(), operator=(), and operator==().
bool sheaf::index_space_collection::is_empty | ( | pod_type | xlocal_id | ) | const |
True if there are no ids in the space with id xlocal_id.
Definition at line 334 of file index_space_collection.cc.
References begin(), contains(), and ct().
Referenced by ct().
bool sheaf::index_space_collection::is_gathered | ( | pod_type | xlocal_id | ) | const |
True if begin(xlocal_id) == 0 and end(xlocal_id) == ct(xlocal_id).
Definition at line 401 of file index_space_collection.cc.
References begin(), contains(), ct(), and end().
Referenced by end().
|
pure virtual |
True if the id space with id xlocal_id should be written to disk.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 686 of file index_space_collection.cc.
References contains(), and new_product_structure().
Referenced by glued_hub_pod(), sheaf::forwarding_index_space_handle::is_persistent(), sheaf::index_space_interval_iterator::is_persistent(), sheaf::index_space_family::is_persistent(), and sheaf::index_space_interval_iterator::next().
|
pure virtual |
Id relative to this collection equivalent to the id space family id xspace_id.
Is Abstract.
Definition at line 117 of file index_space_collection.cc.
References contains(), family_scope(), and sheaf::is_valid().
Referenced by sheaf::implicit_index_space_iterator::attach_to(), sheaf::index_space_iterator::attach_to(), sheaf::forwarding_index_space_handle::attach_to(), sheaf::index_space_handle::attach_to(), sheaf::index_space_family::begin(), sheaf::index_space_family::contains(), contains_family(), sheaf::index_space_family::contains_unglued_hub(), sheaf::index_space_family::ct(), sheaf::index_space_family::delete_product_structure(), sheaf::index_space_family::delete_state(), sheaf::index_space_family::end(), sheaf::index_space_family::get_id_space(), sheaf::index_space_family::get_id_space_iterator(), sheaf::index_space_family::has_product_structure(), sheaf::index_space_family::hub_begin(), sheaf::index_space_family::is_persistent(), sheaf::index_space_family::new_product_structure(), sheaf::index_space_family::pod(), sheaf::index_space_family::product_structure(), sheaf::explicit_index_space_iterator::state(), sheaf::explicit_index_space_handle::state(), and sheaf::index_space_family::unglued_hub_pod().
|
pure virtual |
Creates a new product structure for the id space with id xlocal_id by cloning the product structure, xproduct.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 720 of file index_space_collection.cc.
References contains(), delete_product_structure(), and has_product_structure().
Referenced by is_persistent(), and sheaf::index_space_family::new_product_structure().
|
protectedpure virtual |
Assignment operator.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, sheaf::array_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, sheaf::ragged_array_index_space_interval, sheaf::explicit_index_space_interval, fiber_bundle::i_connectivity_index_space_interval, sheaf::constant_index_space_interval, sheaf::singleton_index_space_interval, sheaf::index_space_interval, and sheaf::explicit_index_space_collection.
Definition at line 198 of file index_space_collection.cc.
References explicit_state(), invariant(), and is_ancestor_of().
Referenced by index_space_collection().
|
pure virtual |
True if this is equivalent to xother.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, sheaf::array_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, sheaf::ragged_array_index_space_interval, fiber_bundle::i_connectivity_index_space_interval, sheaf::constant_index_space_interval, sheaf::singleton_index_space_interval, sheaf::explicit_index_space_interval, sheaf::index_space_interval, and sheaf::explicit_index_space_collection.
Definition at line 54 of file index_space_collection.cc.
References contains(), and is_ancestor_of().
Referenced by ~index_space_collection().
|
pure virtual |
The pod index in the space with id xlocal_id equivalent to xid in the hub id space.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 576 of file index_space_collection.cc.
References contains(), and sheaf::is_valid().
Referenced by contains(), sheaf::forwarding_index_space_handle::pod(), pod(), sheaf::index_space_interval_iterator::pod(), and sheaf::index_space_family::pod().
sheaf::index_space_collection::pod_type sheaf::index_space_collection::pod | ( | pod_type | xlocal_id, |
const scoped_index & | xid | ||
) | const |
The pod index in the space with id xlocal_id equivalent to xid. synonym for pod(xlocal_id, id.hub_pod()).
Definition at line 599 of file index_space_collection.cc.
References contains(), hub_pod(), sheaf::scoped_index::hub_pod(), sheaf::is_valid(), and pod().
|
pure virtual |
The product structure for the id space with id xlocal_id (const version).
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 763 of file index_space_collection.cc.
References contains(), and has_product_structure().
Referenced by delete_product_structure(), sheaf::forwarding_index_space_handle::product_structure(), and sheaf::index_space_family::product_structure().
|
pure virtual |
The product structure for the id space with id xlocal_id (mutable version).
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 787 of file index_space_collection.cc.
References contains(), and has_product_structure().
|
pure virtual |
Returns the id space handle xid_space to the handle pool.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, sheaf::array_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, sheaf::ragged_array_index_space_interval, sheaf::explicit_index_space_interval, fiber_bundle::i_connectivity_index_space_interval, sheaf::constant_index_space_interval, sheaf::singleton_index_space_interval, and sheaf::explicit_index_space_collection.
Definition at line 868 of file index_space_collection.cc.
References allocated_id_space().
Referenced by get_id_space(), sheaf::index_space_interval_iterator::release_id_space(), and sheaf::forwarding_index_space_handle::release_id_space().
|
pure virtual |
Returns the id space iterator xitr to the iterator pool.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, sheaf::array_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, sheaf::ragged_array_index_space_interval, sheaf::explicit_index_space_interval, fiber_bundle::i_connectivity_index_space_interval, sheaf::constant_index_space_interval, sheaf::singleton_index_space_interval, and sheaf::explicit_index_space_collection.
Definition at line 944 of file index_space_collection.cc.
References allocated_id_space_iterator().
Referenced by get_id_space_iterator(), sheaf::index_space_interval_iterator::release_id_space_iterator(), and sheaf::forwarding_index_space_handle::release_iterator().
|
pure virtual |
Remove the id space with id xlocal_id.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Referenced by sheaf::index_space_family::clear_id_spaces(), and sheaf::index_space_family::delete_state().
|
pure virtual |
The pod index in the glued hub id space equivalent to xid in the id space with id xlocal_id.
Implemented in fiber_bundle::ijk_adjacency_index_space_interval, fiber_bundle::ijk_connectivity_index_space_interval, fiber_bundle::ij_adjacency_index_space_interval, fiber_bundle::ij_connectivity_index_space_interval, fiber_bundle::i_adjacency_index_space_interval, and sheaf::explicit_index_space_interval.
Definition at line 641 of file index_space_collection.cc.
References contains(), contains_unglued_hub(), glued_hub_pod(), and sheaf::is_valid().
Referenced by contains_glued_hub(), glued_hub_pod(), hub_pod(), sheaf::forwarding_index_space_handle::unglued_hub_pod(), and sheaf::index_space_interval_iterator::unglued_hub_pod().