21 #ifndef EXPLICIT_INDEX_SPACE_ITERATOR_H 22 #define EXPLICIT_INDEX_SPACE_ITERATOR_H 24 #ifndef SHEAF_DLL_SPEC_H 25 #include "SheafSystem/sheaf_dll_spec.h" 28 #ifndef INDEX_SPACE_ITERATOR_H 29 #include "SheafSystem/index_space_iterator.h" 35 class explicit_index_space_state;
145 virtual bool is_attached()
const;
152 virtual void attach_to(
pod_type xindex);
164 virtual void detach();
216 virtual bool is_ancestor_of(
const any *other)
const;
221 virtual bool invariant()
const;
238 #endif // ifndef EXPLICIT_INDEX_SPACE_ITERATOR_H An abstract iterator over the ids of an id space.
Abstract base class with useful features for all objects.
An immutable abstract state for a space of alternate integer identifiers (aliases) for a subset of th...
void attach_to(const index_space_family &xid_spaces, pod_type xindex)
Attach to the state with index xindex in the id space family xid_spaces.
A collection of id space states. This is a virtual class with provides an interface for accessing the...
bool operator==(const singly_linked_list< T, Alloc > &lhs, const singly_linked_list< T, Alloc > &rhs)
Checks if the contents of lhs and rhs are equal, that is, whether lhs.size() == rhs.size() and each element in lhs compares equal with the element in rhs at the same position.
An implementation of class index_space_iterator for an explicit_index_space_state.
Namespace for the sheaves component of the sheaf system.
explicit_index_space_state * _state
The explicit state.
pod_index_type pod_type
The "plain old data" index type for this.
bool conforms_to_state(const index_space_family &xid_spaces, pod_type xindex) const
True if this conforms to the handle type required by the state with index xindex in the id space fami...