mdds
Public Types | Public Member Functions | Static Public Member Functions | List of all members
mdds::mtv::default_element_block< TypeId, ValueT, StoreT > Struct Template Reference

#include <types.hpp>

Inheritance diagram for mdds::mtv::default_element_block< TypeId, ValueT, StoreT >:
mdds::mtv::copyable_element_block< default_element_block< TypeId, ValueT, delayed_delete_vector >, TypeId, ValueT, delayed_delete_vector > mdds::mtv::element_block< default_element_block< TypeId, ValueT, delayed_delete_vector >, TypeId, ValueT, delayed_delete_vector > mdds::mtv::base_element_block

Public Types

using self_type = default_element_block< TypeId, ValueT, StoreT >
 
using base_type = copyable_element_block< self_type, TypeId, ValueT, StoreT >
 
- Public Types inherited from mdds::mtv::element_block< default_element_block< TypeId, ValueT, delayed_delete_vector >, TypeId, ValueT, delayed_delete_vector >
using store_type = delayed_delete_vector< ValueT, std::allocator< ValueT > >
 
typedef store_type::iterator iterator
 
typedef store_type::reverse_iterator reverse_iterator
 
typedef store_type::const_iterator const_iterator
 
typedef store_type::const_reverse_iterator const_reverse_iterator
 
typedef ValueT value_type
 

Public Member Functions

 default_element_block (size_t n)
 
 default_element_block (size_t n, const ValueT &val)
 
template<typename Iter >
 default_element_block (const Iter &it_begin, const Iter &it_end)
 
- Public Member Functions inherited from mdds::mtv::element_block< default_element_block< TypeId, ValueT, delayed_delete_vector >, TypeId, ValueT, delayed_delete_vector >
bool operator== (const default_element_block< TypeId, ValueT, delayed_delete_vector > &r) const
 
bool operator!= (const default_element_block< TypeId, ValueT, delayed_delete_vector > &r) const
 

Static Public Member Functions

static self_typecreate_block_with_value (size_t init_size, const ValueT &val)
 
template<typename Iter >
static self_typecreate_block_with_values (const Iter &it_begin, const Iter &it_end)
 
static void overwrite_values (base_element_block &, size_t, size_t)
 
- Static Public Member Functions inherited from mdds::mtv::copyable_element_block< default_element_block< TypeId, ValueT, delayed_delete_vector >, TypeId, ValueT, delayed_delete_vector >
static default_element_block< TypeId, ValueT, delayed_delete_vector > * clone_block (const base_element_block &blk)
 
static default_element_block< TypeId, ValueT, delayed_delete_vector > & get (base_element_block &block)
 
static const default_element_block< TypeId, ValueT, delayed_delete_vector > & get (const base_element_block &block)
 
- Static Public Member Functions inherited from mdds::mtv::element_block< default_element_block< TypeId, ValueT, delayed_delete_vector >, TypeId, ValueT, delayed_delete_vector >
static const value_type & at (const base_element_block &block, typename store_type::size_type pos)
 
static value_type & at (base_element_block &block, typename store_type::size_type pos)
 
static value_type * data (base_element_block &block)
 
static store_type::size_type size (const base_element_block &block)
 
static iterator begin (base_element_block &block)
 
static const_iterator begin (const base_element_block &block)
 
static iterator end (base_element_block &block)
 
static const_iterator end (const base_element_block &block)
 
static const_iterator cbegin (const base_element_block &block)
 
static const_iterator cend (const base_element_block &block)
 
static reverse_iterator rbegin (base_element_block &block)
 
static const_reverse_iterator rbegin (const base_element_block &block)
 
static reverse_iterator rend (base_element_block &block)
 
static const_reverse_iterator rend (const base_element_block &block)
 
static const_reverse_iterator crbegin (const base_element_block &block)
 
static const_reverse_iterator crend (const base_element_block &block)
 
static default_element_block< TypeId, ValueT, delayed_delete_vector > & get (base_element_block &block)
 
static const default_element_block< TypeId, ValueT, delayed_delete_vector > & get (const base_element_block &block)
 
static void set_value (base_element_block &blk, size_t pos, const ValueT &val)
 
static void get_value (const base_element_block &blk, size_t pos, ValueT &val)
 
static value_type get_value (const base_element_block &blk, size_t pos)
 
static void append_value (base_element_block &blk, const ValueT &val)
 
static void prepend_value (base_element_block &blk, const ValueT &val)
 
static default_element_block< TypeId, ValueT, delayed_delete_vector > * create_block (size_t init_size)
 
static void delete_block (const base_element_block *p)
 
static void resize_block (base_element_block &blk, size_t new_size)
 
static void print_block (const base_element_block &)
 
static void erase_value (base_element_block &blk, size_t pos)
 
static void erase_values (base_element_block &blk, size_t pos, size_t size)
 
static void append_block (base_element_block &dest, const base_element_block &src)
 
static void append_values_from_block (base_element_block &dest, const base_element_block &src, size_t begin_pos, size_t len)
 
static void assign_values_from_block (base_element_block &dest, const base_element_block &src, size_t begin_pos, size_t len)
 
static void prepend_values_from_block (base_element_block &dest, const base_element_block &src, size_t begin_pos, size_t len)
 
static void swap_values (base_element_block &blk1, base_element_block &blk2, size_t pos1, size_t pos2, size_t len)
 
static bool equal_block (const base_element_block &left, const base_element_block &right)
 
static void set_values (base_element_block &block, size_t pos, const Iter &it_begin, const Iter &it_end)
 
static void append_values (base_element_block &block, const Iter &it_begin, const Iter &it_end)
 
static void prepend_values (base_element_block &block, const Iter &it_begin, const Iter &it_end)
 
static void assign_values (base_element_block &dest, const Iter &it_begin, const Iter &it_end)
 
static void insert_values (base_element_block &block, size_t pos, const Iter &it_begin, const Iter &it_end)
 
static size_t capacity (const base_element_block &block)
 
static void reserve (base_element_block &block, std::size_t size)
 
static void shrink_to_fit (base_element_block &block)
 

Additional Inherited Members

- Static Public Attributes inherited from mdds::mtv::element_block< default_element_block< TypeId, ValueT, delayed_delete_vector >, TypeId, ValueT, delayed_delete_vector >
static constexpr element_t block_type
 
- Protected Member Functions inherited from mdds::mtv::copyable_element_block< default_element_block< TypeId, ValueT, delayed_delete_vector >, TypeId, ValueT, delayed_delete_vector >
 copyable_element_block (size_t n)
 
 copyable_element_block (size_t n, const ValueT &val)
 
 copyable_element_block (const Iter &it_begin, const Iter &it_end)
 
- Protected Member Functions inherited from mdds::mtv::element_block< default_element_block< TypeId, ValueT, delayed_delete_vector >, TypeId, ValueT, delayed_delete_vector >
 element_block (size_t n)
 
 element_block (size_t n, const ValueT &val)
 
 element_block (const Iter &it_begin, const Iter &it_end)
 
- Protected Member Functions inherited from mdds::mtv::base_element_block
 base_element_block (element_t _t)
 
- Protected Attributes inherited from mdds::mtv::element_block< default_element_block< TypeId, ValueT, delayed_delete_vector >, TypeId, ValueT, delayed_delete_vector >
store_type m_array
 
- Protected Attributes inherited from mdds::mtv::base_element_block
element_t type
 

Detailed Description

template<element_t TypeId, typename ValueT, template< typename, typename > class StoreT = delayed_delete_vector>
struct mdds::mtv::default_element_block< TypeId, ValueT, StoreT >

Template for default, unmanaged element block for use in multi_type_vector.