SheafSystem  0.0.0.0
sheaf::auto_block< T, S > Class Template Reference

A contiguously allocated array of items of type T with size information and automatic resizing. More...

#include <auto_block.h>

Inheritance diagram for sheaf::auto_block< T, S >:
sheaf::block< bool > sheaf::block< branch_point_pair > sheaf::block< chart_point_coord_type > sheaf::block< fiber_bundle::chart_point_3d > sheaf::block< fiber_bundle::discretization_context > sheaf::block< fiber_bundle::structured_block *> sheaf::block< fields::local_field_refiner *> sheaf::block< fields::pullback_map *> sheaf::block< geometry::d_bounding_box< 2, 2 > > sheaf::block< geometry::d_bounding_box< DC, DB > > sheaf::block< geometry::d_tree_point_locator_node< DC, DB > > sheaf::block< index_type > sheaf::block< int > sheaf::block< list_type > sheaf::block< pod_index_type > sheaf::block< pod_type > sheaf::block< scoped_index > sheaf::block< sec_vd_dof_type > sheaf::block< sec_vd_value_type > sheaf::block< sheaf::arg_list::arg_type > sheaf::block< sheaf::block< sec_vd_dof_type > * > sheaf::block< sheaf::block< sec_vd_dof_type > > sheaf::block< sheaf::index_space_handle *> sheaf::block< sheaf::poset_dof_map *> sheaf::block< sheaf::poset_state_handle *> sheaf::block< sheaf::scattered_insertion_index_space_handle *> sheaf::block< sheaf::scoped_index > sheaf::block< sheaf::singly_linked_list > sheaf::block< sheaf::subposet > sheaf::block< size_t > sheaf::block< size_type > sheaf::block< std::string > sheaf::block< T * > sheaf::block< vertex_list_type::iterator > sheaf::block< vtkDoubleArray *> sheaf::block< vtkIdType >

Public Types

typedef T value_type
 The type of value stored in the container. More...
 
typedef S initialization_policy
 The value initialization policy. More...
 
typedef T & reference_type
 A type that behaves as a reference to the container's value type. More...
 
typedef const T & const_reference_type
 A type that behaves as a const reference to the container's value type. More...
 
typedef T * pointer_type
 A type that behaves as a pointer to the container's value type. More...
 
typedef const T * const_pointer_type
 A type that behaves as a const pointer to the container's value type. More...
 
typedef sheaf::pod_index_type index_type
 The containers index type. More...
 
typedef signed long int difference_type
 A signed integral type used to represent the difference of two indices or iterators. More...
 
typedef unsigned long int size_type
 An unsigned integral type used to represent sizes and capacities. More...
 

Public Member Functions

pointer_type base () const
 The underlying storage array. More...
 
size_type ct () const
 The number of items currently in use. More...
 
bool invariant () const
 The class invariant. More...
 
reference_type item (index_type xindex) const
 The item at index xindex. More...
 
reference_type operator[] (index_type xindex) const
 The item at index xindex. More...
 
index_type ub () const
 The upper bound on the storage array. The number of items current allocated in the storage array. More...
 
 auto_block (index_type xub=0)
 Creates an instance with ub() == xub; storage is uninitialized. More...
 
 auto_block (index_type xub, size_type xct, const T *xitems)
 Creates an instance with ub() == xub; storage is initialized with xct items copied from xitems. More...
 
 auto_block (const auto_block &xother)
 Copy constructor. More...
 
auto_blockoperator= (const auto_block &xother)
 Assignment operator. More...
 
virtual ~auto_block ()
 Destructor. More...
 
void force_item (index_type xindex, const_reference_type xitem)
 Puts the item xitem at index xindex, resizing if necessary; any other new storage allocated is uninitialized. More...
 
void reserve (index_type xub)
 Makes ub() at least xub; if new storage is allocated, it is uninitialized. More...
 
void set_ct (size_type xct)
 Sets ct() == xct. More...
 
void set_item (index_type xindex, const_reference_type xitem)
 Puts the item xitem at index xindex, but will not resize. More...
 
void assign (const_reference_type xitem)
 Sets the values of all items to xitem. More...
 
void assign (index_type xbegin, index_type xend, const_reference_type xitem)
 Sets the values of items with xbegin <= index < xend to xitem. More...
 
reference_type back () const
 The last item in the auto_block. More...
 
void push_back (const_reference_type item)
 Insert item at the end of the items in the auto_block. More...
 
void push_back (const auto_block &xother)
 Appends xother to the back of this. More...
 
void pop_back ()
 Remove item at the back. More...
 
void clear ()
 Remove all items. More...
 
void initialize (index_type xindex)
 Invokes the initialization policy on the item at xindex. More...
 
void initialize (index_type xbegin, index_type xend)
 Invokes the initialization policy on the range [xbegin, xend). More...
 

Protected Attributes

pointer_type _base
 Start of storage for this. More...
 
index_type _ub
 The index upper bound. More...
 
size_type _ct
 The number of items currently stored. More...
 

Detailed Description

template<typename T, typename S = un_block_initialization_policy<T>>
class sheaf::auto_block< T, S >

A contiguously allocated array of items of type T with size information and automatic resizing.

Definition at line 122 of file auto_block.h.

Member Typedef Documentation

◆ const_pointer_type

template<typename T, typename S = un_block_initialization_policy<T>>
typedef const T* sheaf::auto_block< T, S >::const_pointer_type

A type that behaves as a const pointer to the container's value type.

Definition at line 155 of file auto_block.h.

◆ const_reference_type

template<typename T, typename S = un_block_initialization_policy<T>>
typedef const T& sheaf::auto_block< T, S >::const_reference_type

A type that behaves as a const reference to the container's value type.

Definition at line 145 of file auto_block.h.

◆ difference_type

template<typename T, typename S = un_block_initialization_policy<T>>
typedef signed long int sheaf::auto_block< T, S >::difference_type

A signed integral type used to represent the difference of two indices or iterators.

Definition at line 166 of file auto_block.h.

◆ index_type

template<typename T, typename S = un_block_initialization_policy<T>>
typedef sheaf::pod_index_type sheaf::auto_block< T, S >::index_type

The containers index type.

Definition at line 160 of file auto_block.h.

◆ initialization_policy

template<typename T, typename S = un_block_initialization_policy<T>>
typedef S sheaf::auto_block< T, S >::initialization_policy

The value initialization policy.

Definition at line 135 of file auto_block.h.

◆ pointer_type

template<typename T, typename S = un_block_initialization_policy<T>>
typedef T* sheaf::auto_block< T, S >::pointer_type

A type that behaves as a pointer to the container's value type.

Definition at line 150 of file auto_block.h.

◆ reference_type

template<typename T, typename S = un_block_initialization_policy<T>>
typedef T& sheaf::auto_block< T, S >::reference_type

A type that behaves as a reference to the container's value type.

Definition at line 140 of file auto_block.h.

◆ size_type

template<typename T, typename S = un_block_initialization_policy<T>>
typedef unsigned long int sheaf::auto_block< T, S >::size_type

An unsigned integral type used to represent sizes and capacities.

Definition at line 171 of file auto_block.h.

◆ value_type

template<typename T, typename S = un_block_initialization_policy<T>>
typedef T sheaf::auto_block< T, S >::value_type

The type of value stored in the container.

Definition at line 130 of file auto_block.h.

Constructor & Destructor Documentation

◆ auto_block() [1/3]

template<typename T , typename S >
sheaf::auto_block< T, S >::auto_block ( index_type  xub = 0)

Creates an instance with ub() == xub; storage is uninitialized.

Precondition
  • xub >= 0
Postcondition

Definition at line 259 of file auto_block.impl.h.

Referenced by sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::auto_block(), and sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::ub().

◆ auto_block() [2/3]

template<typename T, typename S >
sheaf::auto_block< T, S >::auto_block ( index_type  xub,
size_type  xct,
const T *  xitems 
)

Creates an instance with ub() == xub; storage is initialized with xct items copied from xitems.

Precondition
  • xub >= 0
  • (0 <= xct) && (xct <= xub)
  • (xct > 0) == (xitems != 0)
  • -unexecutable( "xitems != 0 implies xitems points to array of length >= xct" )
Postcondition
  • for(int i = ( 0 ); i < ( ct() ); ++ i ) -unexecutable( item(i) == xitems[i] )

Definition at line 284 of file auto_block.impl.h.

◆ auto_block() [3/3]

template<typename T, typename S >
sheaf::auto_block< T, S >::auto_block ( const auto_block< T, S > &  xother)

Copy constructor.

Postcondition

Definition at line 320 of file auto_block.impl.h.

◆ ~auto_block()

template<typename T , typename S >
sheaf::auto_block< T, S >::~auto_block ( )
virtual

Member Function Documentation

◆ assign() [1/2]

◆ assign() [2/2]

template<typename T , typename S >
void sheaf::auto_block< T, S >::assign ( index_type  xbegin,
index_type  xend,
const_reference_type  xitem 
)

Sets the values of items with xbegin <= index < xend to xitem.

Precondition
  • xbegin >= 0
  • xend >= xbegin
Postcondition
Issue:
unexecutable because it requires T to define operator==.
Postcondition
  • -unexecutable( /**
  • for(int i = ( xbegin ); i < ( xend ); ++ i ) item(i) == xitem

Definition at line 545 of file auto_block.impl.h.

◆ back()

template<typename T , typename S >
auto_block< T, S >::reference_type sheaf::auto_block< T, S >::back ( ) const

The last item in the auto_block.

Precondition
Issue:
unexecutable because it requires T to define operator==.
Postcondition
  • -unexecutable( result == item(ct() - 1) )

Definition at line 580 of file auto_block.impl.h.

Referenced by sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::assign().

◆ base()

template<typename T , typename S >
T * sheaf::auto_block< T, S >::base ( ) const

The underlying storage array.

Postcondition
  • (result != 0) == (ub() > 0)

Definition at line 124 of file auto_block.impl.h.

Referenced by geometry::d_bin_point_locator< DC, DB >::all_points_at_value(), geometry::cylindrical_point_locator::all_points_at_value(), geometry::d_bin_point_locator< DC, DB >::assign_box(), geometry::d_bin_point_locator< DC, DB >::branch_points_at_value(), geometry::cylindrical_point_locator::branch_points_at_value(), fields::body_builder::build_pa(), fields::average_push_action::finalize(), fields::field_refinement_buffer::gather_coordinate_dofs(), fields::field_refinement_buffer::gather_property_dofs(), fields::property_disc_iterator_4_2::get_prop_disc_values(), fields::property_disc_iterator_4_3::get_prop_disc_values(), fields::property_disc_iterator_1_2::get_prop_disc_values(), fields::property_disc_iterator_1_3::get_prop_disc_values(), sheaf::zero_block_initialization_policy< T >::initialize(), fields::average_push_action::initialize(), fiber_bundle::fiber_bundles_namespace::make_fiber_space_schema_poset(), geometry::cylindrical_point_locator::make_quad_bounding_box(), sheaf::schema_poset_member::make_schema(), geometry::cylindrical_point_locator::make_triangle_bounding_box(), fields::field_factory::new_0d_point_base_space(), fiber_bundle::sec_rep_space_member::new_jrm_state(), fields::put_property_dofs_fcn_action::operator()(), fields::section_pusher_pullback_action::operator()(), fields::body_pusher_pullback_action::operator()(), fields::average_push_action::operator()(), sheaf::ragged_array< pod_index_type >::operator=(), geometry::d_bin_point_locator< DC, DB >::point_at_value(), geometry::cylindrical_point_locator::point_at_value(), fields::field_vd::property_at_coordinates(), fields::discretization_pusher::push(), fields::body_pusher::push_pa(), fields::field_refinement_buffer::push_prop_dofs(), fiber_bundle::unstructured_block_builder::put_name_mode(), fiber_bundle::mesh_partition::put_part(), fields::field_vd::put_property_dofs(), fields::zone_centered_tet_refiner::refine_coordinates(), fields::zone_centered_segment_refiner::refine_coordinates(), fields::zone_centered_triangle_refiner::refine_coordinates(), fields::edge_centered_polygon_refiner::refine_coordinates(), fields::field_refinement_buffer::refine_prop_dofs(), geometry::d_bin_point_locator< DC, DB >::update(), geometry::d_bin_point_locator< DC, DB >::update_box(), and geometry::point_locator::update_domain().

◆ clear()

◆ ct()

template<typename T , typename S >
auto_block< T, S >::size_type sheaf::auto_block< T, S >::ct ( ) const

The number of items currently in use.

Postcondition
  • result >= 0

Definition at line 146 of file auto_block.impl.h.

Referenced by sheaf::poset_state_handle::all_member_names(), sheaf::name_multimap::all_names(), sheaf::poset_component::all_names(), sheaf::subposet::all_names(), sheaf::abstract_poset_member::all_names(), sheaf::poset_state_handle::all_subposet_names(), geometry::array_cylindrical_point_locator::array_cylindrical_point_locator(), geometry::d_bin_point_locator< DC, DB >::assign_box(), sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::base(), fields::base_space_map::base_space_map(), geometry::point_locator::branch_points_at_value(), geometry::d_uniform_point_locator< DC, DB >::branch_points_at_value(), geometry::d_bin_point_locator< DC, DB >::branch_points_at_value(), geometry::cylindrical_point_locator::branch_points_at_value(), geometry::db0_point_locator< DC >::branch_points_at_value(), geometry::sec_ed_invertible::branch_points_at_value_ua(), fiber_bundle::unstructured_block_builder::build_block_decomposition(), fields::body_builder::build_pa(), tool::vtk_poly_data_builder::build_pa(), fields::constant_push_action::constant_push_action(), sheaf::subposet::contains_members(), sheaf::poset_state_handle::contains_members(), sheaf::index_equivalence_class::contains_rep_id(), sheaf::explicit_index_space_interval::ct(), geometry::d_array_point_locator< DC, DB >::d_array_point_locator(), fiber_bundle::base_space_member::d_cells_ct(), geometry::db0_point_locator< DC >::db0_point_locator(), fields::field_eval_iterator::ensure_discretization_order(), fiber_bundle::eval_family::eval_family(), sheaf::member_record::external_size(), sheaf::member_record::externalize(), fields::average_push_action::finalize(), fields::edge_centered_polygon_refiner::first_vertex_index(), fields::field_eval_iterator::gather_coordinate_dofs(), fields::field_refinement_buffer::gather_coordinate_dofs(), fiber_bundle::eval_iterator::gather_dofs(), fiber_bundle::section_eval_iterator::gather_dofs(), fields::field_refinement_buffer::gather_property_dofs(), fiber_bundle::section_space_schema_table_dof_crg_range::get_implicit_private_data(), sheaf::implicit_crg_interval::get_implicit_private_data(), fiber_bundle::structured_block_1d_crg_interval::get_implicit_private_data(), fiber_bundle::product_section_space_schema_crg_range::get_implicit_private_data(), fiber_bundle::point_block_crg_interval::get_implicit_private_data(), fiber_bundle::structured_block_2d_crg_interval::get_implicit_private_data(), fiber_bundle::structured_block_3d_crg_interval::get_implicit_private_data(), fiber_bundle::zone_nodes_block_crg_interval::get_implicit_private_data(), sheaf::implicit_crg_interval::get_private_data(), fields::property_disc_iterator_4_2::get_prop_disc_values(), fields::property_disc_iterator_4_3::get_prop_disc_values(), fields::property_disc_iterator_1_2::get_prop_disc_values(), fields::property_disc_iterator_1_3::get_prop_disc_values(), sheaf::id_block::id_block(), sheaf::poset_state_handle::includes_subposets(), sheaf::subposet_state::initialize(), fields::average_push_action::initialize(), geometry::sec_ed_invertible::initialize_d_array_point_locator(), sheaf::implicit_crg_interval::initialize_dof_tuple_ids(), fiber_bundle::eval_family::initialize_members(), sheaf::namespace_poset_schema::initialize_standard_members(), sheaf::subposet::insert_members(), sheaf::member_record::internalize(), sheaf::id_block::is_member_hub_id_space(), fields::field_factory::linear_scalar_fcn(), fields::make_base_space(), fiber_bundle::fiber_bundles_namespace::make_fiber_space_schema_poset(), fields::edge_centered_polygon_refiner::make_new_vertices(), fields::edge_centered_polygon_refiner::make_new_zones(), geometry::cylindrical_point_locator::make_quad_bounding_box(), sheaf::schema_poset_member::make_schema(), geometry::cylindrical_point_locator::make_triangle_bounding_box(), fields::edge_centered_triangle_refiner::modify_crg(), fields::edge_centered_polygon_refiner::modify_crg(), fields::zone_centered_tet_refiner::modify_subposets(), fields::edge_centered_polygon_refiner::modify_subposets(), fields::field_factory::new_0d_point_base_space(), fields::field_factory::new_1d_uniform_coordinates(), fields::field_factory::new_1d_unstructured_coordinates(), fields::field_factory::new_2d_uniform_coordinates(), fields::field_factory::new_2d_unstructured_coordinates(), fields::body_factory::new_3d_uniform_bodies(), fields::field_factory::new_3d_uniform_coordinates(), fields::field_factory::new_3d_unstructured_coordinates(), fiber_bundle::sec_rep_space_member::new_jrm_state(), fields::field_factory::new_scalar_field_1d_points(), fields::field_factory::new_scalar_field_1d_uniform(), fields::field_factory::new_scalar_field_1d_unstructured(), fields::field_factory::new_scalar_field_2d_points(), fields::field_factory::new_scalar_field_2d_uniform(), fields::field_factory::new_scalar_field_2d_unstructured(), fields::field_factory::new_scalar_field_3d_points(), fields::field_factory::new_scalar_field_3d_uniform(), fields::field_factory::new_scalar_field_3d_unstructured(), fields::field_factory::new_structured_base_space(), fiber_bundle::eval_iterator::next(), fields::field_eval_iterator::next(), fields::put_property_dofs_fcn_action::operator()(), fields::print_property_dofs_action::operator()(), fields::section_pusher_pullback_action::operator()(), fields::body_pusher_pullback_action::operator()(), fields::average_push_action::operator()(), sheaf::index_equivalence_class::operator=(), sheaf::ragged_array< pod_index_type >::operator=(), sheaf::operator==(), fields::field_vd::property_at_coordinates(), fields::field_vd::property_dof_function_example(), fields::discretization_pusher::push(), sheaf::binary_index_block< T >::push_back(), sheaf::wsv_block< int >::push_back(), sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::push_back(), fields::body_pusher::push_pa(), fields::field_refinement_buffer::push_prop_dofs(), sheaf::zn_to_bool::put(), fiber_bundle::section_space_schema_table_dof_crg_range::put_implicit_private_data(), fiber_bundle::product_section_space_schema_crg_range::put_implicit_private_data(), fiber_bundle::unstructured_block_builder::put_name_mode(), sheaf::zn_to_bool::put_not(), fiber_bundle::mesh_partition::put_part(), fields::field_vd::put_property_dofs(), fields::zone_centered_tet_refiner::refine_coordinates(), fields::zone_centered_segment_refiner::refine_coordinates(), fields::zone_centered_triangle_refiner::refine_coordinates(), fields::edge_centered_polygon_refiner::refine_coordinates(), fields::field_refinement_buffer::refine_prop_dofs(), fields::field_eval_iterator::reset(), fiber_bundle::eval_iterator::scatter_dofs(), fiber_bundle::section_eval_iterator::scatter_dofs(), fields::section_pusher::section_pusher(), tool::visualization_iterator_4_3::set_vtk_data(), tool::visualization_iterator_1_3::set_vtk_data(), fields::variance_bound_refinement_policy::should_refine(), fields::field_factory::step_fcn(), sheaf::poset_slicer::up_set_pa(), geometry::d_bin_point_locator< DC, DB >::update(), geometry::cylindrical_point_locator::update(), and fields::field_factory::zero().

◆ force_item()

template<typename T , typename S >
void sheaf::auto_block< T, S >::force_item ( index_type  xindex,
const_reference_type  xitem 
)

◆ initialize() [1/2]

template<typename T , typename S >
void sheaf::auto_block< T, S >::initialize ( index_type  xindex)

◆ initialize() [2/2]

template<typename T , typename S >
void sheaf::auto_block< T, S >::initialize ( index_type  xbegin,
index_type  xend 
)

Invokes the initialization policy on the range [xbegin, xend).

Precondition
  • 0 <= xbegin
  • xbegin <= xend
Postcondition

Definition at line 732 of file auto_block.impl.h.

◆ invariant()

template<typename T , typename S >
bool sheaf::auto_block< T, S >::invariant ( ) const

◆ item()

template<typename T , typename S >
T & sheaf::auto_block< T, S >::item ( index_type  xindex) const

◆ operator=()

template<typename T , typename S >
auto_block< T, S > & sheaf::auto_block< T, S >::operator= ( const auto_block< T, S > &  xother)

Assignment operator.

Postcondition
  • -unexecutable( *this == xother )

Definition at line 343 of file auto_block.impl.h.

Referenced by sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::auto_block().

◆ operator[]()

template<typename T , typename S >
T & sheaf::auto_block< T, S >::operator[] ( index_type  xindex) const

The item at index xindex.

Precondition
  • xindex >= 0 && xindex < ub()
Postcondition

Definition at line 216 of file auto_block.impl.h.

Referenced by sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::item().

◆ pop_back()

template<typename T , typename S >
void sheaf::auto_block< T, S >::pop_back ( )

◆ push_back() [1/2]

template<typename T , typename S >
void sheaf::auto_block< T, S >::push_back ( const_reference_type  item)

Insert item at the end of the items in the auto_block.

Postcondition
Issue:
unexecutable because it requires T to define operator==.
Postcondition
  • -unexecutable( back() == item )

Definition at line 605 of file auto_block.impl.h.

Referenced by sheaf::name_multimap::all_names(), sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::back(), fields::base_space_map::base_space_map(), geometry::d_uniform_point_locator< DC, DB >::branch_points_at_value(), geometry::d_bin_point_locator< DC, DB >::branch_points_at_value(), geometry::cylindrical_point_locator::branch_points_at_value(), fields::body_builder::build_pa(), sheaf::member_record::externalize(), fiber_bundle::structured_block_1d_crg_interval::get_implicit_private_data(), fiber_bundle::structured_block_2d_crg_interval::get_implicit_private_data(), fiber_bundle::structured_block_3d_crg_interval::get_implicit_private_data(), sheaf::implicit_crg_interval::get_private_data(), sheaf::index_equivalence_class::index_equivalence_class(), sheaf::namespace_poset_schema::initialize_standard_members(), fiber_bundle::fiber_bundles_namespace::make_fiber_space_schema_poset(), fields::edge_centered_polygon_refiner::make_new_vertices(), fields::edge_centered_polygon_refiner::make_new_zones(), geometry::cylindrical_point_locator::make_quad_bounding_box(), sheaf::schema_poset_member::make_schema(), geometry::cylindrical_point_locator::make_triangle_bounding_box(), fields::edge_centered_triangle_refiner::modify_crg(), fields::zone_centered_tet_refiner::modify_crg(), fields::field_factory::new_0d_point_base_space(), fiber_bundle::sec_rep_space_member::new_jrm_state(), fiber_bundle::eval_iterator::next(), fields::field_eval_iterator::next(), sheaf::index_equivalence_class::operator=(), fiber_bundle::mesh_partition::part(), sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::push_back(), fields::body_pusher::push_pa(), fiber_bundle::unstructured_block_builder::put_name_mode(), fields::zone_centered_segment_refiner::refine_base_space(), fields::zone_centered_triangle_refiner::refine_base_space(), tool::visualization_iterator_4_2::set_vtk_data(), tool::visualization_iterator_1_1::set_vtk_data(), tool::visualization_iterator_4_3::set_vtk_data(), and tool::visualization_iterator_1_3::set_vtk_data().

◆ push_back() [2/2]

template<typename T , typename S >
void sheaf::auto_block< T, S >::push_back ( const auto_block< T, S > &  xother)

Appends xother to the back of this.

Postcondition
  • this->ct() == old_ct + xother.ct()

Definition at line 631 of file auto_block.impl.h.

◆ reserve()

template<typename T , typename S >
void sheaf::auto_block< T, S >::reserve ( index_type  xub)

Makes ub() at least xub; if new storage is allocated, it is uninitialized.

Precondition
  • xub >= 0
Postcondition

Definition at line 418 of file auto_block.impl.h.

Referenced by sheaf::name_multimap::all_names(), fields::average_push_action::average_push_action(), fields::base_space_map::base_space_map(), fields::constant_push_action::constant_push_action(), geometry::cylindrical_point_locator::cylindrical_point_locator(), geometry::d_bin_point_locator< DC, DB >::d_bin_point_locator(), fiber_bundle::base_space_member::d_cells_ct(), geometry::db0_point_locator< DC >::db0_point_locator(), fields::field_refinement_buffer::field_refinement_buffer(), sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::force_item(), fields::field_refinement_buffer::gather_coordinate_dofs(), fields::field_refinement_buffer::gather_property_dofs(), fiber_bundle::point_block_crg_interval::get_dof_tuple_ids(), fiber_bundle::structured_block_1d_crg_interval::get_dof_tuple_ids(), fiber_bundle::structured_block_2d_crg_interval::get_dof_tuple_ids(), fiber_bundle::structured_block_3d_crg_interval::get_dof_tuple_ids(), fiber_bundle::zone_nodes_block_crg_interval::get_dof_tuple_ids(), sheaf::implicit_crg_interval::get_private_data(), fiber_bundle::structured_block_1d_crg_interval::get_private_data(), fiber_bundle::point_block_crg_interval::get_private_data(), fiber_bundle::structured_block_2d_crg_interval::get_private_data(), fiber_bundle::structured_block_3d_crg_interval::get_private_data(), fiber_bundle::zone_nodes_block_crg_interval::get_private_data(), fiber_bundle::homogeneous_block_crg_interval::homogeneous_block_crg_interval(), sheaf::index_equivalence_class::index_equivalence_class(), fields::average_base_space_map_push_action::initialize(), fields::average_push_action::initialize(), fields::local_field_refiner::initialize_buffers(), sheaf::implicit_crg_interval::initialize_dof_tuple_ids(), fiber_bundle::eval_family::initialize_members(), fiber_bundle::product_section_space_schema_poset::initialize_standard_members(), sheaf::member_record::internalize(), sheaf::member_record::member_record(), sheaf::namespace_poset_dof_map::namespace_poset_dof_map(), sheaf::index_equivalence_class::operator=(), fiber_bundle::mesh_partition::part(), geometry::point_locator::point_locator(), fields::print_property_dofs_action::print_property_dofs_action(), fields::put_property_dofs_action::put_property_dofs_action(), sheaf::array_index_space_state::reserve(), fields::edge_centered_polygon_refiner::reserve_vertex_buffers(), geometry::d_bin_point_locator< DC, DB >::update(), and geometry::cylindrical_point_locator::update().

◆ set_ct()

template<typename T , typename S >
void sheaf::auto_block< T, S >::set_ct ( size_type  xct)

Sets ct() == xct.

Precondition
  • 0 <= xct && xct <= ub()
Postcondition

Definition at line 473 of file auto_block.impl.h.

Referenced by sheaf::name_multimap::all_names(), geometry::d_bin_point_locator< DC, DB >::assign_box(), fields::average_push_action::average_push_action(), fields::base_space_map::base_space_map(), geometry::db0_point_locator< DC >::branch_points_at_value(), fields::body_builder::build_pa(), tool::visualization_iterator::clear_down_set(), fields::constant_push_action::constant_push_action(), geometry::cylindrical_point_locator::cylindrical_point_locator(), geometry::d_bin_point_locator< DC, DB >::d_bin_point_locator(), fiber_bundle::base_space_member::d_cells_ct(), geometry::db0_point_locator< DC >::db0_point_locator(), fields::field_refinement_buffer::evaluate_source_at_disc(), sheaf::member_record::externalize(), fields::field_refinement_buffer::field_refinement_buffer(), fiber_bundle::eval_iterator::force_is_done(), fields::field_eval_iterator::force_is_done(), fields::field_refinement_buffer::gather_coordinate_dofs(), fields::field_refinement_buffer::gather_property_dofs(), fiber_bundle::point_block_crg_interval::get_dof_tuple_ids(), fiber_bundle::structured_block_1d_crg_interval::get_dof_tuple_ids(), fiber_bundle::structured_block_2d_crg_interval::get_dof_tuple_ids(), fiber_bundle::structured_block_3d_crg_interval::get_dof_tuple_ids(), fiber_bundle::zone_nodes_block_crg_interval::get_dof_tuple_ids(), fiber_bundle::point_block_crg_interval::get_implicit_private_data(), fiber_bundle::zone_nodes_block_crg_interval::get_implicit_private_data(), fiber_bundle::structured_block_1d_crg_interval::get_private_data(), fiber_bundle::point_block_crg_interval::get_private_data(), fiber_bundle::structured_block_2d_crg_interval::get_private_data(), fiber_bundle::structured_block_3d_crg_interval::get_private_data(), fiber_bundle::zone_nodes_block_crg_interval::get_private_data(), fields::property_disc_iterator_1_2::get_prop_disc_values(), fields::property_disc_iterator_1_3::get_prop_disc_values(), fiber_bundle::homogeneous_block_crg_interval::homogeneous_block_crg_interval(), sheaf::index_equivalence_class::index_equivalence_class(), fields::average_base_space_map_push_action::initialize(), fields::average_push_action::initialize(), fields::local_field_refiner::initialize_buffers(), sheaf::implicit_crg_interval::initialize_dof_tuple_ids(), fiber_bundle::eval_family::initialize_members(), fiber_bundle::product_section_space_schema_poset::initialize_standard_members(), geometry::cylindrical_point_locator::insert_quad(), geometry::cylindrical_point_locator::insert_triangle(), sheaf::member_record::internalize(), fiber_bundle::fiber_bundles_namespace::make_fiber_space_schema_poset(), fields::edge_centered_polygon_refiner::make_new_vertices(), fields::edge_centered_polygon_refiner::make_new_zones(), sheaf::member_record::member_record(), fields::zone_centered_tet_refiner::modify_crg(), fiber_bundle::eval_iterator::next(), fields::field_eval_iterator::next(), sheaf::index_equivalence_class::operator=(), fiber_bundle::mesh_partition::part(), geometry::point_locator::point_locator(), fields::print_property_dofs_action::print_property_dofs_action(), fields::field_vd::property_at_coordinates(), fields::discretization_pusher::push(), fiber_bundle::unstructured_block_builder::put_name_mode(), fields::field_vd::put_property_dofs(), fields::put_property_dofs_action::put_property_dofs_action(), fields::zone_centered_segment_refiner::refine_base_space(), fields::zone_centered_triangle_refiner::refine_base_space(), sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::reserve(), fields::field_eval_iterator::reset(), fields::section_pusher::section_pusher(), fields::variance_bound_refinement_policy::should_refine(), geometry::d_bin_point_locator< DC, DB >::update(), and geometry::cylindrical_point_locator::update().

◆ set_item()

template<typename T , typename S >
void sheaf::auto_block< T, S >::set_item ( index_type  xindex,
const_reference_type  xitem 
)

Puts the item xitem at index xindex, but will not resize.

Precondition
  • 0 <= xindex && xindex < ub()
Postcondition
Issue:
unexecutable because it requires T to define operator==.
Postcondition
  • -unexecutable( item(xindex)==xitem )

Definition at line 493 of file auto_block.impl.h.

Referenced by sheaf::explicit_index_space_interval::insert(), and sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::set_ct().

◆ ub()

template<typename T , typename S >
auto_block< T, S >::index_type sheaf::auto_block< T, S >::ub ( ) const

The upper bound on the storage array. The number of items current allocated in the storage array.

Postcondition

Definition at line 240 of file auto_block.impl.h.

Referenced by sheaf::array_index_space_state::capacity(), sheaf::sum_index_space_state::clear(), sheaf::id_block::clone(), sheaf::array_index_space_state::contains_unglued_hub(), fields::local_field_refiner::create_vertex(), fields::local_field_refiner::create_zone(), sheaf::deep_size(), fields::field_refinement_buffer::field_refinement_buffer(), sheaf::id_block::id_block(), sheaf::poset_state_handle::index_in_bounds(), fields::local_field_refiner::initialize_buffers(), fiber_bundle::eval_family::initialize_members(), sheaf::array_index_space_state::map_rep_gather(), fields::field_factory::new_1d_uniform_coordinates(), fields::field_factory::new_2d_uniform_coordinates(), fields::field_factory::new_3d_uniform_coordinates(), sheaf::array_index_space_interval::new_space(), fields::section_pusher_push_action::operator()(), fields::copy_push_action::operator()(), fields::section_pusher_pullback_action::operator()(), fields::constant_push_action::operator()(), fields::body_pusher_pullback_action::operator()(), fields::average_push_action::operator()(), sheaf::index_equivalence_class::operator=(), sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::operator=(), sheaf::array_index_space_state::operator=(), sheaf::array_index_space_state::operator==(), sheaf::operator==(), sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::operator[](), fields::field_vd::property_at_coordinates(), fields::discretization_pusher::push(), fields::field_refinement_buffer::push_prop_dofs(), sheaf::array_index_space_state::unglued_hub_pod(), geometry::point_locator::update_domain(), sheaf::explicit_index_space_interval::~explicit_index_space_interval(), sheaf::poset_scaffold::~poset_scaffold(), and sheaf::sum_index_space_state::~sum_index_space_state().

Member Data Documentation

◆ _base

template<typename T, typename S = un_block_initialization_policy<T>>
pointer_type sheaf::auto_block< T, S >::_base
protected

Start of storage for this.

Definition at line 306 of file auto_block.h.

Referenced by sheaf::auto_block< pod_type, invalid_block_initialization_policy< pod_type > >::operator=().

◆ _ct

template<typename T, typename S = un_block_initialization_policy<T>>
size_type sheaf::auto_block< T, S >::_ct
protected

◆ _ub

template<typename T, typename S = un_block_initialization_policy<T>>
index_type sheaf::auto_block< T, S >::_ub
protected

The index upper bound.

Definition at line 311 of file auto_block.h.


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