SheafSystem
0.0.0.0
|
A record buffer for transferring member data between the kernel and the i/o subsystem. More...
#include <member_record.h>
Public Member Functions | |
member_record (member_record_set &xhost) | |
Creates an instance in record set xhost for reading or writing member data. More... | |
member_record (const member_record &xother) | |
Copy constructor. More... | |
virtual | ~member_record () |
Destructor. More... | |
implicit_crg_interval * | interval () const |
The implicit interval object for the current member, if any. More... | |
bool | is_resident () const |
True if and only if member represented by this record is fully resident after read. More... | |
void | new_equivalence_iterator () |
Create the equivalence iterator. More... | |
void | delete_equivalence_iterator () |
Destroy the equivalence iterator. More... | |
bool | has_equivalence_iterator () const |
True, if the equivalence iterator is initialized. More... | |
size_type | external_size (const scoped_index &xmbr_id) |
The size of the member record in external form. More... | |
void | externalize (const scoped_index &xmbr_id, hvl_t *xhdf_buffer) |
Converts the record from internal to external form. More... | |
void | internalize (hvl_t *xhdf_buffer, const scoped_index &xmbr_id) |
Converts the record from external to internal form. More... | |
virtual member_record * | clone () const |
Virtual constructor; makes a new instance of the same type as this. More... | |
virtual bool | invariant () const |
Class invariant. More... | |
virtual bool | is_ancestor_of (const any *other) const |
Conformance test; true if other conforms to this. More... | |
Public Member Functions inherited from sheaf::variable_length_record | |
variable_length_record (const variable_length_record &xother) | |
Copy constructor. More... | |
virtual | ~variable_length_record () |
Destructor. More... | |
variable_length_record (const poset_scaffold &xscaffold) | |
Creates an instance with type map xtype_map. More... | |
void * | buf () const |
The buffer. More... | |
size_t | buf_ub () const |
The size of the buffer, in bytes. More... | |
Public Member Functions inherited from sheaf::record | |
record (const record &xother) | |
Copy constructor. More... | |
virtual | ~record () |
Destructor. More... | |
record (const poset_scaffold &xscaffold) | |
Creates an instance with type map xtype_map. More... | |
record_index | external_index () const |
The external index of this record. More... | |
void | put_external_index (const record_index &xindex) |
Sets the index of this record to xindex. More... | |
poset_scaffold & | scaffold () |
The scaffold for the poset associated with this record (mutable version). More... | |
const poset_scaffold & | scaffold () const |
The scaffold for the poset associated with this record (const version). More... | |
poset_data_type_map & | type_map () |
The data type map used to convert data for this record (mutable version). More... | |
const poset_data_type_map & | type_map () const |
The data type map used to convert data for this record (const version). 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... | |
Additional Inherited Members | |
Protected Member Functions inherited from sheaf::variable_length_record | |
void | put_buf (const void *xbuf, size_t xub) |
Sets the buffer to xbuf. More... | |
bool | delete_buffer () |
True if this allocated the buffer and the dtor should delete it. More... | |
void | put_delete_buffer (bool xval) |
Sets delete_buffer to value xval. More... | |
void * | item (size_t xoffset) const |
Pointer to record item beginning at offset xoffset. More... | |
bool | is_internal () const |
True if the internal buffer has been initialized. More... | |
void | put_is_internal (bool xis_internal) |
Sets is_internal to xis_internal. More... | |
bool | is_external () const |
True if the external buffer has been initialized. More... | |
void | put_is_external (bool xis_external) |
Sets is_external to xis_external. More... | |
Protected Member Functions inherited from sheaf::any | |
any () | |
default constructor More... | |
A record buffer for transferring member data between the kernel and the i/o subsystem.
Definition at line 54 of file member_record.h.
sheaf::member_record::member_record | ( | member_record_set & | xhost | ) |
Creates an instance in record set xhost for reading or writing member data.
Definition at line 50 of file member_record.cc.
References sheaf::variable_length_record::buf(), sheaf::variable_length_record::buf_ub(), sheaf::record::external_index(), invariant(), sheaf::variable_length_record::is_external(), sheaf::variable_length_record::is_internal(), sheaf::is_valid(), sheaf::variable_length_record::put_is_external(), sheaf::variable_length_record::put_is_internal(), sheaf::scoped_index::put_scope(), sheaf::auto_block< T, S >::reserve(), sheaf::record::scaffold(), sheaf::auto_block< T, S >::set_ct(), and sheaf::poset_scaffold::subposets().
Referenced by clone().
sheaf::member_record::member_record | ( | const member_record & | xother | ) |
Copy constructor.
Not Implemented.
Definition at line 118 of file member_record.cc.
References invariant(), and ~member_record().
|
virtual |
Destructor.
Definition at line 135 of file member_record.cc.
References interval().
Referenced by member_record().
|
virtual |
Virtual constructor; makes a new instance of the same type as this.
Reimplemented from sheaf::variable_length_record.
Definition at line 3556 of file member_record.cc.
References invariant(), sheaf::any::is_same_type(), and member_record().
Referenced by internalize().
void sheaf::member_record::delete_equivalence_iterator | ( | ) |
Destroy the equivalence iterator.
Definition at line 239 of file member_record.cc.
References has_equivalence_iterator().
Referenced by sheaf::member_record_set::externalize(), and new_equivalence_iterator().
sheaf::size_type sheaf::member_record::external_size | ( | const scoped_index & | xmbr_id | ) |
The size of the member record in external form.
Definition at line 297 of file member_record.cc.
References sheaf::subposet::contains_member(), sheaf::poset_crg_state::cover_ct(), sheaf::poset_crg_state::cover_is_explicit(), sheaf::poset_state_handle::crg(), sheaf::index_equivalence_iterator::ct(), sheaf::auto_block< T, S >::ct(), sheaf::implicit_crg_interval::dof_tuple_ids(), externalize(), has_equivalence_iterator(), sheaf::scoped_index::hub_pod(), sheaf::poset_crg_state::implicit_member(), sheaf::implicit_crg_interval::is_interval_member(), sheaf::poset_state_handle::is_jim(), sheaf::LOWER, sheaf::poset_state_handle::member_name_ct(), sheaf::scoped_index::pod(), sheaf::implicit_crg_interval::private_data_size(), sheaf::record::scaffold(), sheaf::poset_state_handle::standard_subposet_ct(), sheaf::poset_scaffold::structure(), sheaf::poset_scaffold::subposets(), and sheaf::UPPER.
Referenced by has_equivalence_iterator(), and sheaf::member_record_set::make_internal_dataspace().
void sheaf::member_record::externalize | ( | const scoped_index & | xmbr_id, |
hvl_t * | xhdf_buffer | ||
) |
Converts the record from internal to external form.
Definition at line 752 of file member_record.cc.
References sheaf::poset_state_handle::all_member_names(), sheaf::variable_length_record::buf(), sheaf::variable_length_record::buf_ub(), sheaf::poset_dof_map::class_name(), sheaf::implicit_crg_interval::class_name(), sheaf::auto_block< T, S >::clear(), sheaf::dof_tuple_record_set::compute_ext_id(), sheaf::subposet::contains_member(), sheaf::poset_crg_state::cover_is_explicit(), sheaf::poset_state_handle::crg(), sheaf::auto_block< T, S >::ct(), sheaf::poset_scaffold::dof_tuple_class_names(), sheaf::poset_state_handle::dof_tuple_id(), sheaf::poset_scaffold::dof_tuple_id_space(), sheaf::implicit_crg_interval::dof_tuple_ids(), sheaf::member_record_set::dof_tuple_records(), sheaf::poset_scaffold::dof_tuple_types(), sheaf::record_queue::enqueue(), sheaf::poset_scaffold::external_schema(), sheaf::poset_state_handle::get_cover_id_space_iterator(), sheaf::implicit_crg_interval::get_private_data(), has_equivalence_iterator(), sheaf::scoped_index::hub_id(), sheaf::index_space_iterator::hub_pod(), sheaf::scoped_index::hub_pod(), sheaf::poset_crg_state::implicit_member(), sheaf::poset_component::index(), internalize(), sheaf::index_space_iterator::is_done(), sheaf::variable_length_record::is_external(), sheaf::variable_length_record::is_internal(), sheaf::implicit_crg_interval::is_interval_member(), sheaf::poset_state_handle::is_jim(), sheaf::is_valid(), sheaf::scoped_index::is_valid(), sheaf::LOWER, sheaf::poset_scaffold::member_class_names(), sheaf::poset_state_handle::member_dof_tuple_id(), sheaf::poset_scaffold::member_ext_id(), sheaf::poset_state_handle::member_name_ct(), sheaf::poset_scaffold::member_name_map(), sheaf::subposet::name(), sheaf::index_space_iterator::next(), sheaf::explicit_index_space_handle::pod(), sheaf::scoped_index::pod(), sheaf::auto_block< T, S >::push_back(), sheaf::variable_length_record::put_buf(), sheaf::variable_length_record::put_delete_buffer(), sheaf::name_multimap::put_entry(), sheaf::variable_length_record::put_is_external(), sheaf::variable_length_record::put_is_internal(), sheaf::dof_tuple_record_set::queue(), sheaf::poset_state_handle::release_cover_id_space_iterator(), sheaf::poset_state_handle::row_dof_map(), sheaf::record::scaffold(), sheaf::auto_block< T, S >::set_ct(), sheaf::crg_interval::size(), sheaf::poset_state_handle::standard_subposet_ct(), sheaf::poset_scaffold::structure(), sheaf::poset_scaffold::subposets(), sheaf::poset_dof_map::type_id(), sheaf::record::type_map(), and sheaf::UPPER.
Referenced by external_size(), and sheaf::member_record_set::externalize().
bool sheaf::member_record::has_equivalence_iterator | ( | ) | const |
True, if the equivalence iterator is initialized.
Definition at line 261 of file member_record.cc.
References external_size(), sheaf::scoped_index::hub_pod(), sheaf::index_equivalence_iterator::put_rep_id(), sheaf::index_equivalence_iterator::rep_id(), sheaf::index_equivalence_iterator::reset(), and sheaf::record::scaffold().
Referenced by delete_equivalence_iterator(), external_size(), externalize(), and new_equivalence_iterator().
void sheaf::member_record::internalize | ( | hvl_t * | xhdf_buffer, |
const scoped_index & | xmbr_id | ||
) |
Converts the record from external to internal form.
Definition at line 2137 of file member_record.cc.
References sheaf::name_multimap::all_names(), sheaf::poset_state_handle::bound_contains_member(), sheaf::poset_bounds::bounded_below(), sheaf::variable_length_record::buf(), sheaf::variable_length_record::buf_ub(), sheaf::poset_crg_state::clear_cover(), clone(), sheaf::explicit_index_space_handle::contains(), sheaf::poset_crg_state::contains_member(), sheaf::poset_state_handle::crg(), sheaf::auto_block< T, S >::ct(), sheaf::poset_scaffold::dof_tuple_class_names(), sheaf::poset_scaffold::dof_tuple_id_space(), sheaf::member_record_set::dof_tuple_records(), sheaf::poset_scaffold::dof_tuple_schema_int_id(), sheaf::poset_scaffold::dof_tuple_schema_version(), sheaf::poset_scaffold::dof_tuple_types(), sheaf::record_queue::enqueue(), sheaf::implicit_crg_interval::finalize(), sheaf::abstract_poset_member::ge(), sheaf::scoped_index::hub_pod(), sheaf::poset_scaffold::id_spaces(), sheaf::poset_crg_state::implicit_member(), sheaf::scoped_index::in_scope(), sheaf::poset_dof_map::index(), sheaf::poset_component::index(), sheaf::poset_dof_map::init_row_dof_map(), sheaf::implicit_crg_interval::initialize_dof_tuple_ids(), sheaf::scattered_insertion_index_space_handle::insert(), sheaf::poset_crg_state::insert_cover_member(), sheaf::subposet::insert_member(), sheaf::variable_length_record::is_external(), sheaf::variable_length_record::is_internal(), sheaf::implicit_crg_interval::is_interval_member(), sheaf::scoped_index::is_valid(), sheaf::poset_state_handle::jims(), sheaf::abstract_poset_member::le(), sheaf::LOWER, sheaf::poset_scaffold::member_class_names(), sheaf::poset_scaffold::member_ext_id(), sheaf::poset_state_handle::member_has_name(), sheaf::poset_scaffold::member_name_map(), sheaf::subposet::name(), sheaf::poset_dof_map::new_dof_map(), sheaf::poset_state_handle::new_member(), sheaf::poset_state_handle::new_member_interval(), sheaf::scoped_index::pod(), sheaf::variable_length_record::put_buf(), sheaf::variable_length_record::put_is_external(), sheaf::variable_length_record::put_is_internal(), sheaf::poset_state_handle::put_member_dof_tuple_id(), sheaf::poset_state_handle::put_member_name(), sheaf::implicit_crg_interval::put_private_data(), sheaf::poset_table_state::put_row_dof_tuple(), sheaf::dof_tuple_record_set::queue(), sheaf::subposet::remove_member(), sheaf::auto_block< T, S >::reserve(), sheaf::poset_scaffold::row_bounds(), sheaf::record::scaffold(), sheaf::poset_state_handle::schema(), sheaf::auto_block< T, S >::set_ct(), sheaf::poset_state_handle::standard_member_ct(), sheaf::poset_state_handle::standard_subposet_ct(), sheaf::poset_state_handle::state_obj(), sheaf::poset_scaffold::structure(), sheaf::poset_scaffold::subposets(), sheaf::poset_state::table(), sheaf::record::type_map(), and sheaf::UPPER.
Referenced by externalize(), and sheaf::member_record_set::read_record().
sheaf::implicit_crg_interval * sheaf::member_record::interval | ( | ) | const |
The implicit interval object for the current member, if any.
Definition at line 157 of file member_record.cc.
References is_resident().
Referenced by sheaf::member_record_set::make_internal_dataspace(), and ~member_record().
|
virtual |
Class invariant.
Reimplemented from sheaf::variable_length_record.
Definition at line 3579 of file member_record.cc.
References sheaf::any::disable_invariant_check(), sheaf::any::enable_invariant_check(), sheaf::variable_length_record::invariant(), sheaf::any::invariant_check(), and is_ancestor_of().
Referenced by clone(), and member_record().
|
virtual |
Conformance test; true if other conforms to this.
Reimplemented from sheaf::variable_length_record.
Definition at line 3612 of file member_record.cc.
Referenced by invariant().
bool sheaf::member_record::is_resident | ( | ) | const |
True if and only if member represented by this record is fully resident after read.
Definition at line 167 of file member_record.cc.
References new_equivalence_iterator().
Referenced by interval(), and sheaf::member_record_set::make_internal_dataspace().
void sheaf::member_record::new_equivalence_iterator | ( | ) |
Create the equivalence iterator.
Definition at line 216 of file member_record.cc.
References delete_equivalence_iterator(), has_equivalence_iterator(), and sheaf::record::scaffold().
Referenced by sheaf::member_record_set::externalize(), and is_resident().