SheafSystem  0.0.0.0
fiber_bundle::section_space_schema_jims_index_space_state Class Reference

An implementation class explicit_index_space_state for the jims id space of the section space schema. More...

#include <section_space_schema_jims_index_space_state.h>

Inheritance diagram for fiber_bundle::section_space_schema_jims_index_space_state:
sheaf::explicit_index_space_state sheaf::any

Public Member Functions

virtual const std::string & class_name () const
 The name of this class. More...
 
virtual section_space_schema_jims_index_space_stateclone () const
 Virtual constructor; create a new instance of the same type at this. More...
 
- Public Member Functions inherited from sheaf::explicit_index_space_state
virtual ~explicit_index_space_state ()
 Destructor. More...
 
const index_space_collectionhost () const
 The host collection (const version). More...
 
index_space_collectionhost ()
 The host collection (mutable version). More...
 
pod_type index () const
 The index of this id space. More...
 
const index_space_familyid_spaces () const
 The id space family for this (const version). More...
 
index_space_familyid_spaces ()
 The id space family for this (mutable version). More...
 
const hub_index_space_handlehub_id_space () const
 The hub id space. More...
 
size_type ct () const
 The number of members. More...
 
bool is_empty () const
 True if there are no ids in the space. More...
 
pod_type begin () const
 Beginning id of this space. More...
 
pod_type end () const
 Ending id of this space. More...
 
bool is_gathered () const
 True if begin() == 0 and end() == ct(). More...
 
bool contains (const scoped_index &xid) const
 True if this space contains an id equivalent to xid. synonym for contains_hub(xid.hub_pod()). More...
 
bool contains_hub (pod_type xid) const
 True if this space contains an id equivalent to xid in the unglued hub id space. synonym for contains_unglued_hub(xid) More...
 
virtual bool contains_glued_hub (pod_type xid) const
 True if this space contains an id equivalent to xid in the hub id space. More...
 
bool contains (pod_type xid, const scoped_index &xhub_id) const
 True if this space contains an id xid equivalent to xhub_id in the hub id space. synonym for contains(xid, xhub_id.hub_pod()). More...
 
virtual bool contains (pod_type xid, pod_type xhub_id) const
 True if this space contains an id xid equivalent to xhub_id in the hub id space. More...
 
pod_type pod (const scoped_index &xid) const
 The pod index in this space equivalent to xid. synonym for pod(xid.hub_pod()). More...
 
pod_type hub_pod (pod_type xid) const
 The pod index in the unglued hub id space equivalent to xid in this id space. synonym for unglued_hub_pod(xid). More...
 
virtual pod_type glued_hub_pod (pod_type xid) const
 The pod index in the glued hub id space equivalent to xid in this id space. More...
 
bool is_persistent () const
 True if this id space should be written to disk. More...
 
const abstract_product_structureproduct_structure () const
 The product structure for this id space (const version). More...
 
abstract_product_structureproduct_structure ()
 The product structure for this id space (mutable version). More...
 
bool has_product_structure () const
 True if this id space has a product structure. 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...
 

Friends

class fiber_bundles_namespace
 

SPACE FACTORY FACET

static section_space_schema_jims_index_space_handle new_space (index_space_family &xid_spaces, const std::string &xname, const index_space_handle &xbase_space_id_space, const index_space_handle &xfiber_schema_id_space, const ij_product_structure &xsection_space_schema_product)
 Create a new section space schema jims id space in the id space family xid_space at the next available id space index with name xname, base space id space xbase_space_id_space, fiber schema id space, xfiber_schema_id_space and section space schema product structure xsection_space_schema_product. Returns a handle to the id space created. More...
 
static section_space_schema_jims_index_space_handle new_space (index_space_family &xid_spaces, pod_type xid, const std::string &xname, const index_space_handle &xbase_space_id_space, const index_space_handle &xfiber_schema_id_space, const ij_product_structure &xsection_space_schema_product)
 Create a new section space schema jims id space in the id space family xid_space at id space index xid with name xname, base space id space xbase_space_id_space, fiber schema id space, xfiber_schema_id_space and section space schema product structure xsection_space_schema_product. Returns a handle to the id space created. More...
 

SECTION_SPACE_SCHEMA_JIMS_INDEX_SPACE_STATE FACET

 section_space_schema_jims_index_space_state ()
 Default constructor. More...
 
 section_space_schema_jims_index_space_state (const section_space_schema_jims_index_space_state &xother)
 Copy constructor; disabled. More...
 
virtual ~section_space_schema_jims_index_space_state ()
 Destructor. More...
 

SECTION SPACE SCHEMA INDEX SPACE FACET

index_space_handle_base_space
 The base space jims id space. More...
 
index_space_handle_fiber_schema
 The fiber schema jims id space. More...
 
ij_product_structure_section_space_schema_product
 The product structure of the section space schema id space. More...
 
void put_factors (const index_space_handle &xbase_space_id_space, const index_space_handle &xfiber_schema_id_space, const ij_product_structure &xsection_space_schema_product)
 Set the factors for this section space schema id space. More...
 
const index_space_handlebase_space () const
 The base space jims id space. More...
 
const index_space_handlefiber_schema () const
 The fiber schema jims id space. More...
 
const ij_product_structuresection_space_schema_product_structure () const
 The product structure of the section space schema id space. More...
 
bool is_consistent () const
 True, if this id space is consistent with the base space and the fiber schema jims id spaces. More...
 
void update ()
 Make this id space consistent with the base space and fiber schema jims id spaces. More...
 

EXPLICIT_INDEX_SPACE_STATE FACET

virtual section_space_schema_jims_index_space_stateoperator= (const explicit_index_space_state &xother)
 Assignment operator. More...
 
virtual bool operator== (const explicit_index_space_state &xother) const
 True if this is equivalent to xother. More...
 
virtual size_type deep_size (bool xinclude_shallow) const
 The deep size of this. More...
 

INDEX SPACE FACET

virtual bool contains (pod_type xid) const
 True if this space contains id xid. More...
 
virtual bool contains_unglued_hub (pod_type xid) const
 True if this space contains an id equivalent to xid in the unglued hub id space. More...
 
virtual pod_type pod (pod_type xid) const
 The pod index in this space equivalent to xid in the hub id space. More...
 
virtual pod_type unglued_hub_pod (pod_type xid) const
 The pod index in the unglued hub id space equivalent to xid in this id space. More...
 

PRODUCT STRUCTURE FACET

virtual void new_product_structure (const abstract_product_structure &xproduct)
 Creates a new product structure for this id space by cloning the product structure, xproduct. More...
 
virtual void delete_product_structure ()
 Deletes the product structure for this id space. More...
 
const ij_product_structureproduct_structure () const
 The product structure for this id space (const version). More...
 
ij_product_structureproduct_structure ()
 The product structure for this id space (mutable version). More...
 

HANDLE POOL FACET

static size_type handle_pool_ct ()
 The number of handles in the pool. More...
 
static size_type handle_pool_deep_size ()
 The deep size of the handle pool. More...
 
virtual index_space_handleget_id_space () const
 The id space handle with this state. More...
 
virtual void release_id_space (index_space_handle &xid_space) const
 Release the id space handle xid_space. More...
 
virtual bool allocated_id_space (const index_space_handle &xid_space) const
 True if and only if id space handle xid_space was allocated by the handle pool. More...
 

ITERATOR POOL FACET

static size_type iterator_pool_ct ()
 The number of iterators in the pool. More...
 
static size_type iterator_pool_deep_size ()
 The deep size of the iterator pool. More...
 
virtual index_space_iteratorget_iterator () const
 Allocates an id space iterator from the iterator pool. More...
 
virtual void release_iterator (index_space_iterator &xitr) const
 Returns the id space iterator xitr to the iterator pool. More...
 
virtual bool allocated_iterator (const index_space_iterator &xitr) const
 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 Types inherited from sheaf::explicit_index_space_state
typedef pod_index_type pod_type
 The "plain old data" index type for this. More...
 
- Static Public Member Functions inherited from sheaf::explicit_index_space_state
static factory< explicit_index_space_state > & id_space_factory ()
 A factory for making descendants of this class. More...
 
- Protected Member Functions inherited from sheaf::explicit_index_space_state
 explicit_index_space_state ()
 Default constructor. More...
 
 explicit_index_space_state (const explicit_index_space_state &xother)
 Copy constructor; disabled. More...
 
void new_state (index_space_family &xid_spaces, const std::string &xname, bool xis_persistent)
 Create a new id space state in the id space family xid_spaces at the next available id space index with name xname, and persistence xis_persistent. More...
 
void new_state (index_space_family &xid_spaces, pod_type xid, const std::string &xname, bool xis_persistent)
 Create a new id space state in the id space family xid_spaces at the id space index xid with name xname, and persistence xis_persistent. More...
 
void invalidate_extrema ()
 Invalidate the extrema. More...
 
void attach (explicit_index_space_handle &xid_space) const
 Attach the id space handle xid_space to this state. More...
 
void attach (explicit_index_space_iterator &xitr) const
 Attach the id space iterator xitr to this state. More...
 
- Protected Member Functions inherited from sheaf::any
 any ()
 default constructor More...
 
- Protected Attributes inherited from sheaf::explicit_index_space_state
index_space_collection_host
 The host collection. More...
 
pod_type _index
 The index of this id space. More...
 
size_type _ct
 The number of members. More...
 
pod_type _begin
 Beginning id of this space. More...
 
pod_type _end
 Ending id of this space. More...
 
bool _is_persistent
 True if this id space should be written to disk. More...
 
abstract_product_structure_product
 The product structure for this id space. More...
 

Detailed Description

An implementation class explicit_index_space_state for the jims id space of the section space schema.

Definition at line 54 of file section_space_schema_jims_index_space_state.h.

Constructor & Destructor Documentation

◆ section_space_schema_jims_index_space_state() [1/2]

fiber_bundle::section_space_schema_jims_index_space_state::section_space_schema_jims_index_space_state ( )
protected

◆ section_space_schema_jims_index_space_state() [2/2]

fiber_bundle::section_space_schema_jims_index_space_state::section_space_schema_jims_index_space_state ( const section_space_schema_jims_index_space_state xother)
inlineprotected

Copy constructor; disabled.

Definition at line 123 of file section_space_schema_jims_index_space_state.h.

◆ ~section_space_schema_jims_index_space_state()

fiber_bundle::section_space_schema_jims_index_space_state::~section_space_schema_jims_index_space_state ( )
protectedvirtual

Member Function Documentation

◆ allocated_id_space()

bool fiber_bundle::section_space_schema_jims_index_space_state::allocated_id_space ( const index_space_handle xid_space) const
virtual

True if and only if id space handle xid_space was allocated by the handle pool.

Postcondition
  • is_basic_query

Implements sheaf::explicit_index_space_state.

Definition at line 788 of file section_space_schema_jims_index_space_state.cc.

References iterator_pool_ct().

Referenced by release_id_space().

◆ allocated_iterator()

bool fiber_bundle::section_space_schema_jims_index_space_state::allocated_iterator ( const index_space_iterator xitr) const
virtual

True if and only if id space iterator xitr was allocated by the iterator pool.

Postcondition
  • is_basic_query

Implements sheaf::explicit_index_space_state.

Definition at line 925 of file section_space_schema_jims_index_space_state.cc.

References class_name().

Referenced by release_iterator().

◆ base_space()

const sheaf::index_space_handle & fiber_bundle::section_space_schema_jims_index_space_state::base_space ( ) const

◆ class_name()

const std::string & fiber_bundle::section_space_schema_jims_index_space_state::class_name ( ) const
virtual

The name of this class.

Reimplemented from sheaf::explicit_index_space_state.

Definition at line 977 of file section_space_schema_jims_index_space_state.cc.

References clone().

Referenced by allocated_iterator().

◆ clone()

fiber_bundle::section_space_schema_jims_index_space_state * fiber_bundle::section_space_schema_jims_index_space_state::clone ( ) const
virtual

Virtual constructor; create a new instance of the same type at this.

Postcondition
  • result != 0
  • is_same_type(result)

Implements sheaf::explicit_index_space_state.

Definition at line 985 of file section_space_schema_jims_index_space_state.cc.

References sheaf::explicit_index_space_state::id_space_factory(), is_ancestor_of(), sheaf::any::is_same_type(), and section_space_schema_jims_index_space_state().

Referenced by class_name().

◆ contains()

bool fiber_bundle::section_space_schema_jims_index_space_state::contains ( pod_type  xid) const
virtual

True if this space contains id xid.

Postcondition
  • is_basic_query

Implements sheaf::explicit_index_space_state.

Definition at line 462 of file section_space_schema_jims_index_space_state.cc.

References _base_space, _fiber_schema, sheaf::index_space_handle::contains(), contains_unglued_hub(), product_structure(), and sheaf::ij_product_structure::tuple().

Referenced by operator=(), and pod().

◆ contains_unglued_hub()

bool fiber_bundle::section_space_schema_jims_index_space_state::contains_unglued_hub ( pod_type  xid) const
virtual

True if this space contains an id equivalent to xid in the unglued hub id space.

Postcondition
  • is_basic_query

Implements sheaf::explicit_index_space_state.

Definition at line 490 of file section_space_schema_jims_index_space_state.cc.

References _base_space, _fiber_schema, _section_space_schema_product, sheaf::index_space_handle::contains_unglued_hub(), pod(), and sheaf::ij_product_structure::tuple().

Referenced by contains(), and unglued_hub_pod().

◆ deep_size()

sheaf::size_type fiber_bundle::section_space_schema_jims_index_space_state::deep_size ( bool  xinclude_shallow) const
virtual

The deep size of this.

Postcondition
  • result >= 0

Reimplemented from sheaf::explicit_index_space_state.

Definition at line 403 of file section_space_schema_jims_index_space_state.cc.

References fiber_bundle::deep_size(), and operator=().

Referenced by fiber_bundle::deep_size(), and operator==().

◆ delete_product_structure()

void fiber_bundle::section_space_schema_jims_index_space_state::delete_product_structure ( )
virtual

Deletes the product structure for this id space.

Not Implemented.

Postcondition
  • !has_product_structure()

Reimplemented from sheaf::explicit_index_space_state.

Definition at line 629 of file section_space_schema_jims_index_space_state.cc.

References sheaf::explicit_index_space_state::has_product_structure(), and product_structure().

Referenced by new_product_structure().

◆ fiber_schema()

const sheaf::index_space_handle & fiber_bundle::section_space_schema_jims_index_space_state::fiber_schema ( ) const

◆ get_id_space()

sheaf::index_space_handle & fiber_bundle::section_space_schema_jims_index_space_state::get_id_space ( ) const
virtual

The id space handle with this state.

Postcondition
  • result.is_attached()

Implements sheaf::explicit_index_space_state.

Definition at line 741 of file section_space_schema_jims_index_space_state.cc.

References sheaf::explicit_index_space_state::attach(), sheaf::explicit_index_space_handle::is_attached(), and release_id_space().

Referenced by handle_pool_deep_size().

◆ get_iterator()

sheaf::index_space_iterator & fiber_bundle::section_space_schema_jims_index_space_state::get_iterator ( ) const
virtual

Allocates an id space iterator from the iterator pool.

Postcondition
  • result.is_attached()

Implements sheaf::explicit_index_space_state.

Definition at line 878 of file section_space_schema_jims_index_space_state.cc.

References sheaf::explicit_index_space_state::attach(), sheaf::explicit_index_space_iterator::is_attached(), and release_iterator().

Referenced by iterator_pool_deep_size().

◆ handle_pool_ct()

sheaf::size_type fiber_bundle::section_space_schema_jims_index_space_state::handle_pool_ct ( )
static

The number of handles in the pool.

Postcondition
  • result >= 0

Definition at line 703 of file section_space_schema_jims_index_space_state.cc.

References handle_pool_deep_size().

Referenced by product_structure().

◆ handle_pool_deep_size()

sheaf::size_type fiber_bundle::section_space_schema_jims_index_space_state::handle_pool_deep_size ( )
static

The deep size of the handle pool.

Postcondition
  • result >= 0

Definition at line 722 of file section_space_schema_jims_index_space_state.cc.

References sheaf::deep_size(), and get_id_space().

Referenced by handle_pool_ct().

◆ invariant()

◆ is_ancestor_of()

bool fiber_bundle::section_space_schema_jims_index_space_state::is_ancestor_of ( const any other) const
virtual

Conformance test; true if other conforms to this.

Precondition
  • other != 0

Reimplemented from sheaf::explicit_index_space_state.

Definition at line 1035 of file section_space_schema_jims_index_space_state.cc.

References invariant().

Referenced by clone(), operator=(), and operator==().

◆ is_consistent()

bool fiber_bundle::section_space_schema_jims_index_space_state::is_consistent ( ) const

◆ iterator_pool_ct()

sheaf::size_type fiber_bundle::section_space_schema_jims_index_space_state::iterator_pool_ct ( )
static

The number of iterators in the pool.

Postcondition
  • result >= 0

Definition at line 840 of file section_space_schema_jims_index_space_state.cc.

References iterator_pool_deep_size().

Referenced by allocated_id_space().

◆ iterator_pool_deep_size()

sheaf::size_type fiber_bundle::section_space_schema_jims_index_space_state::iterator_pool_deep_size ( )
static

The deep size of the iterator pool.

Postcondition
  • result >= 0

Definition at line 859 of file section_space_schema_jims_index_space_state.cc.

References sheaf::deep_size(), and get_iterator().

Referenced by iterator_pool_ct().

◆ new_product_structure()

void fiber_bundle::section_space_schema_jims_index_space_state::new_product_structure ( const abstract_product_structure xproduct)
virtual

Creates a new product structure for this id space by cloning the product structure, xproduct.

Not Implemented.

Postcondition

Reimplemented from sheaf::explicit_index_space_state.

Definition at line 610 of file section_space_schema_jims_index_space_state.cc.

References delete_product_structure(), and sheaf::explicit_index_space_state::has_product_structure().

Referenced by unglued_hub_pod().

◆ new_space() [1/2]

fiber_bundle::section_space_schema_jims_index_space_handle fiber_bundle::section_space_schema_jims_index_space_state::new_space ( index_space_family xid_spaces,
const std::string &  xname,
const index_space_handle xbase_space_id_space,
const index_space_handle xfiber_schema_id_space,
const ij_product_structure xsection_space_schema_product 
)
static

Create a new section space schema jims id space in the id space family xid_space at the next available id space index with name xname, base space id space xbase_space_id_space, fiber schema id space, xfiber_schema_id_space and section space schema product structure xsection_space_schema_product. Returns a handle to the id space created.

Precondition
  • !xname.empty()
  • !xid_spaces.contains(xname)
Postcondition
  • &result.id_spaces() == &xid_spaces
  • xid_spaces.contains(xname)
  • result.conforms_to_state(xname)
  • result.name() == xname
  • result.base_space() == xbase_space_id_space
  • result.fiber_schema() == xfiber_schema_id_space
  • -unexecutable( "result.section_space_schema_product_structure() == xsection_space_schema_product" )
  • result.begin() == 0
  • result.end() == xbase_space_id_space.end()*xfiber_schema_id_space.end()
  • result.ct() == xbase_space_id_space.ct()*xfiber_schema_id_space.ct()

Definition at line 41 of file section_space_schema_jims_index_space_state.cc.

References fiber_bundle::section_space_schema_jims_index_space_handle::base_space(), sheaf::explicit_index_space_handle::begin(), sheaf::ij_product_structure::clone(), fiber_bundle::section_space_schema_jims_index_space_handle::conforms_to_state(), sheaf::index_space_family::contains(), sheaf::index_space_handle::ct(), sheaf::explicit_index_space_handle::ct(), sheaf::index_space_handle::end(), sheaf::explicit_index_space_handle::end(), fiber_bundle::section_space_schema_jims_index_space_handle::fiber_schema(), sheaf::index_space_handle::get_id_space(), sheaf::explicit_index_space_handle::id_spaces(), sheaf::explicit_index_space_handle::is_persistent(), and sheaf::index_space_handle::name().

Referenced by fiber_bundle::section_space_schema_jims_index_space_handle::new_space().

◆ new_space() [2/2]

fiber_bundle::section_space_schema_jims_index_space_handle fiber_bundle::section_space_schema_jims_index_space_state::new_space ( index_space_family xid_spaces,
pod_type  xid,
const std::string &  xname,
const index_space_handle xbase_space_id_space,
const index_space_handle xfiber_schema_id_space,
const ij_product_structure xsection_space_schema_product 
)
static

Create a new section space schema jims id space in the id space family xid_space at id space index xid with name xname, base space id space xbase_space_id_space, fiber schema id space, xfiber_schema_id_space and section space schema product structure xsection_space_schema_product. Returns a handle to the id space created.

Precondition
  • !xid_spaces.contains(xid)
  • xid_spaces.is_explicit_interval(xid)
  • !xname.empty()
  • !xid_spaces.contains(xname)
Postcondition
  • &result.id_spaces() == &xid_spaces
  • xid_spaces.contains(xname)
  • result.conforms_to_state(xname)
  • result.index() == xid
  • result.name() == xname
  • result.base_space() == xbase_space_id_space
  • result.fiber_schema() == xfiber_schema_id_space
  • -unexecutable( "result.section_space_schema_product_structure() == xsection_space_schema_product" )
  • result.begin() == 0
  • result.end() == xbase_space_id_space.end()*xfiber_schema_id_space.end()
  • result.ct() == xbase_space_id_space.ct()*xfiber_schema_id_space.ct()

Definition at line 100 of file section_space_schema_jims_index_space_state.cc.

References fiber_bundle::section_space_schema_jims_index_space_handle::base_space(), sheaf::explicit_index_space_handle::begin(), sheaf::ij_product_structure::clone(), fiber_bundle::section_space_schema_jims_index_space_handle::conforms_to_state(), sheaf::index_space_family::contains(), sheaf::index_space_handle::ct(), sheaf::explicit_index_space_handle::ct(), sheaf::index_space_handle::end(), sheaf::explicit_index_space_handle::end(), fiber_bundle::section_space_schema_jims_index_space_handle::fiber_schema(), sheaf::index_space_handle::get_id_space(), sheaf::explicit_index_space_handle::id_spaces(), sheaf::explicit_index_space_handle::index(), sheaf::index_space_family::is_explicit_interval(), sheaf::explicit_index_space_handle::is_persistent(), sheaf::index_space_handle::name(), and section_space_schema_jims_index_space_state().

◆ operator=()

fiber_bundle::section_space_schema_jims_index_space_state & fiber_bundle::section_space_schema_jims_index_space_state::operator= ( const explicit_index_space_state xother)
protectedvirtual

Assignment operator.

Precondition
  • is_ancestor_of(&xother)
Postcondition
  • (*this) == xother

Reimplemented from sheaf::explicit_index_space_state.

Definition at line 424 of file section_space_schema_jims_index_space_state.cc.

References _base_space, _fiber_schema, _section_space_schema_product, sheaf::ij_product_structure::clone(), contains(), sheaf::index_space_handle::get_id_space(), invariant(), and is_ancestor_of().

Referenced by deep_size().

◆ operator==()

bool fiber_bundle::section_space_schema_jims_index_space_state::operator== ( const explicit_index_space_state xother) const
virtual

True if this is equivalent to xother.

Precondition
  • is_ancestor_of(&xother)

Reimplemented from sheaf::explicit_index_space_state.

Definition at line 377 of file section_space_schema_jims_index_space_state.cc.

References _base_space, _fiber_schema, _section_space_schema_product, deep_size(), is_ancestor_of(), and sheaf::explicit_index_space_state::operator==().

Referenced by update().

◆ pod()

sheaf::explicit_index_space_state::pod_type fiber_bundle::section_space_schema_jims_index_space_state::pod ( pod_type  xid) const
virtual

◆ product_structure() [1/2]

const sheaf::ij_product_structure & fiber_bundle::section_space_schema_jims_index_space_state::product_structure ( ) const

The product structure for this id space (const version).

Precondition
Postcondition
  • is_basic_query

Definition at line 648 of file section_space_schema_jims_index_space_state.cc.

References sheaf::explicit_index_space_state::has_product_structure().

Referenced by contains(), delete_product_structure(), invariant(), pod(), unglued_hub_pod(), and update().

◆ product_structure() [2/2]

sheaf::ij_product_structure & fiber_bundle::section_space_schema_jims_index_space_state::product_structure ( )

The product structure for this id space (mutable version).

Precondition
Postcondition
  • is_basic_query

Definition at line 670 of file section_space_schema_jims_index_space_state.cc.

References handle_pool_ct(), and sheaf::explicit_index_space_state::has_product_structure().

◆ put_factors()

void fiber_bundle::section_space_schema_jims_index_space_state::put_factors ( const index_space_handle xbase_space_id_space,
const index_space_handle xfiber_schema_id_space,
const ij_product_structure xsection_space_schema_product 
)

◆ release_id_space()

void fiber_bundle::section_space_schema_jims_index_space_state::release_id_space ( index_space_handle xid_space) const
virtual

Release the id space handle xid_space.

Precondition
  • allocated_id_space(xid_space)
Postcondition
  • is_basic_query

Implements sheaf::explicit_index_space_state.

Definition at line 761 of file section_space_schema_jims_index_space_state.cc.

References allocated_id_space(), and sheaf::index_space_handle::detach().

Referenced by get_id_space().

◆ release_iterator()

void fiber_bundle::section_space_schema_jims_index_space_state::release_iterator ( index_space_iterator xitr) const
virtual

Returns the id space iterator xitr to the iterator pool.

Precondition
  • allocated_iterator(xitr)
Postcondition
  • is_basic_query

Implements sheaf::explicit_index_space_state.

Definition at line 898 of file section_space_schema_jims_index_space_state.cc.

References allocated_iterator(), and sheaf::index_space_iterator::detach().

Referenced by get_iterator().

◆ section_space_schema_product_structure()

const sheaf::ij_product_structure & fiber_bundle::section_space_schema_jims_index_space_state::section_space_schema_product_structure ( ) const

The product structure of the section space schema id space.

Postcondition
  • is_basic_query

Definition at line 301 of file section_space_schema_jims_index_space_state.cc.

References _section_space_schema_product, and is_consistent().

Referenced by fiber_bundle::deep_size(), fiber_schema(), and fiber_bundle::section_space_schema_jims_index_space_handle::section_space_schema_product_structure().

◆ unglued_hub_pod()

sheaf::explicit_index_space_state::pod_type fiber_bundle::section_space_schema_jims_index_space_state::unglued_hub_pod ( pod_type  xid) const
virtual

The pod index in the unglued hub id space equivalent to xid in this id space.

Postcondition
  • !is_valid(result) || contains_unglued_hub(result)

Implements sheaf::explicit_index_space_state.

Definition at line 559 of file section_space_schema_jims_index_space_state.cc.

References _base_space, _fiber_schema, _section_space_schema_product, contains_unglued_hub(), sheaf::index_space_handle::hub_pod(), sheaf::invalid_pod_index(), sheaf::is_valid(), new_product_structure(), sheaf::ij_product_structure::ordinal(), product_structure(), and sheaf::ij_product_structure::tuple().

Referenced by pod().

◆ update()

Member Data Documentation

◆ _base_space

index_space_handle* fiber_bundle::section_space_schema_jims_index_space_state::_base_space
protected

◆ _fiber_schema

index_space_handle* fiber_bundle::section_space_schema_jims_index_space_state::_fiber_schema
protected

◆ _section_space_schema_product

ij_product_structure* fiber_bundle::section_space_schema_jims_index_space_state::_section_space_schema_product
protected

The documentation for this class was generated from the following files: