|
STXXL
1.4-dev
|
Inheritance diagram for stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >:
Collaboration diagram for stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >:Classes | |
| struct | metainfo_type |
| struct | value_compare |
Public Types | |
| enum | { raw_size = RawSize } |
| enum | { nelements = block_type::size - 1, max_size = nelements, min_size = nelements / 2 } |
| typedef BID< raw_size > | bid_type |
| typedef block_type::const_iterator | block_const_iterator |
| typedef block_type::iterator | block_iterator |
| typedef typed_block< raw_size, value_type, 0, metainfo_type > | block_type |
| typedef BTreeType | btree_type |
| typedef btree_type::value_type | btree_value_type |
| typedef btree_type::const_iterator | const_iterator |
| typedef const value_type & | const_reference |
| typedef btree_type::iterator | iterator |
| typedef KeyCmp | key_compare |
| typedef KeyType | key_type |
| typedef btree_type::leaf_bid_type | leaf_bid_type |
| typedef btree_type::leaf_type | leaf_type |
| typedef bid_type | node_bid_type |
| typedef node_cache < normal_node, btree_type > | node_cache_type |
| typedef self_type | node_type |
| typedef value_type & | reference |
| typedef normal_node< KeyType, KeyCmp, RawSize, BTreeType > | self_type |
| typedef btree_type::size_type | size_type |
| typedef std::pair< key_type, bid_type > | value_type |
Public Member Functions | |
| normal_node (btree_type *btree, key_compare cmp) | |
| virtual | ~normal_node () |
| reference | back () |
| const_reference | back () const |
| key_type | balance (normal_node &left, bool check_constraints=true) |
| iterator | begin (unsigned height) |
| const_iterator | begin (unsigned height) const |
| block_type & | block () |
| void | deallocate_children (unsigned height) |
| size_type | erase (const key_type &k, unsigned height) |
| iterator | find (const key_type &k, unsigned height) |
| const_iterator | find (const key_type &k, unsigned height) const |
| reference | front () |
| const_reference | front () const |
| void | fuse (const normal_node &src) |
| void | init (const bid_type &my_bid_) |
| std::pair< iterator, bool > | insert (const btree_value_type &x, unsigned height, std::pair< key_type, bid_type > &splitter) |
| request_ptr | load (const bid_type &bid) |
| iterator | lower_bound (const key_type &k, unsigned height) |
| const_iterator | lower_bound (const key_type &k, unsigned height) const |
| bid_type | my_bid () const |
| reference | operator[] (int i) |
| const_reference | operator[] (int i) const |
| bool | overflows () const |
| request_ptr | prefetch (const bid_type &bid) |
| void | push_back (const value_type &x) |
| void | save () |
| unsigned | size () const |
| bool | underflows () const |
| iterator | upper_bound (const key_type &k, unsigned height) |
| const_iterator | upper_bound (const key_type &k, unsigned height) const |
Static Public Member Functions | |
| static unsigned | max_nelements () |
| static unsigned | min_nelements () |
Private Member Functions | |
| template<class CacheType > | |
| void | fuse_or_balance (block_iterator UIt, CacheType &cache) |
| std::pair< key_type, bid_type > | insert (const std::pair< key_type, bid_type > &splitter, const block_iterator &place2insert) |
Private Member Functions inherited from stxxl::noncopyable | |
| noncopyable () | |
Private Attributes | |
| block_type * | m_block |
| btree_type * | m_btree |
| key_compare | m_cmp |
| value_compare | m_vcmp |
| typedef BID<raw_size> stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::bid_type |
| typedef block_type::const_iterator stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::block_const_iterator |
| typedef block_type::iterator stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::block_iterator |
| typedef typed_block<raw_size, value_type, 0, metainfo_type> stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::block_type |
| typedef BTreeType stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::btree_type |
| typedef btree_type::value_type stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::btree_value_type |
| typedef btree_type::const_iterator stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::const_iterator |
| typedef const value_type& stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::const_reference |
| typedef btree_type::iterator stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::iterator |
| typedef KeyCmp stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::key_compare |
| typedef KeyType stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::key_type |
| typedef btree_type::leaf_bid_type stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::leaf_bid_type |
| typedef btree_type::leaf_type stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::leaf_type |
| typedef bid_type stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::node_bid_type |
| typedef node_cache<normal_node, btree_type> stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::node_cache_type |
| typedef self_type stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::node_type |
| typedef value_type& stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::reference |
| typedef normal_node<KeyType, KeyCmp, RawSize, BTreeType> stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::self_type |
| typedef btree_type::size_type stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::size_type |
| typedef std::pair<key_type, bid_type> stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::value_type |
| anonymous enum |
| anonymous enum |
|
inlinevirtual |
|
inline |
|
inline |
Definition at line 298 of file node.h.
Referenced by stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::balance(), stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::bulk_construction(), stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::erase(), and stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::fuse().
|
inline |
|
inline |
Definition at line 629 of file node.h.
References stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::back(), stxxl::mng_local::element_block< Type, Size >::begin(), stxxl::mng_local::block_w_info< Type, RawSize, NBids, MetaInfoType >::info, stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::m_block, stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::max_nelements(), stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::min_nelements(), stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::size(), and STXXL_ASSERT.
Referenced by stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::bulk_construction().
|
inline |
Definition at line 375 of file node.h.
References stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::begin(), and STXXL_VERBOSE1.
Referenced by stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::begin(), and stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::begin().
|
inline |
Definition at line 397 of file node.h.
References stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::begin(), and STXXL_VERBOSE1.
|
inline |
|
inline |
Definition at line 724 of file node.h.
References stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::deallocate_children().
Referenced by stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::deallocate_children(), and stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::deallocate_children().
|
inline |
Definition at line 678 of file node.h.
References stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::erase(), STXXL_VERBOSE1, and stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::underflows().
Referenced by stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::erase().
|
inline |
Definition at line 419 of file node.h.
References stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::find(), and STXXL_VERBOSE1.
Referenced by stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::find(), and stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::find().
|
inline |
Definition at line 451 of file node.h.
References stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::find(), and STXXL_VERBOSE1.
|
inline |
|
inline |
|
inline |
Definition at line 611 of file node.h.
References stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::back(), stxxl::mng_local::element_block< Type, Size >::begin(), stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::m_block, and stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::size().
Referenced by stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::bulk_construction().
|
inlineprivate |
|
inline |
|
inlineprivate |
Definition at line 91 of file node.h.
References stxxl::mng_local::element_block< Type, Size >::begin(), stxxl::mng_local::block_w_info< Type, RawSize, NBids, MetaInfoType >::info, stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::m_block, stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::size(), and STXXL_VERBOSE1.
Referenced by stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::insert(), and stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::insert().
|
inline |
Definition at line 319 of file node.h.
References stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::insert(), and STXXL_VERBOSE1.
|
inline |
Definition at line 269 of file node.h.
References stxxl::request_interface::wait().
|
inline |
Definition at line 483 of file node.h.
References stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::lower_bound(), and STXXL_VERBOSE1.
Referenced by stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::lower_bound(), and stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::lower_bound().
|
inline |
Definition at line 515 of file node.h.
References stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::lower_bound(), and STXXL_VERBOSE1.
|
inlinestatic |
Definition at line 226 of file node.h.
Referenced by stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::balance(), and stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::bulk_construction().
|
inlinestatic |
Definition at line 227 of file node.h.
Referenced by stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::balance(), and stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::bulk_construction().
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 223 of file node.h.
Referenced by stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::bulk_construction().
|
inline |
|
inline |
Definition at line 750 of file node.h.
Referenced by stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::bulk_construction().
|
inline |
Definition at line 263 of file node.h.
References stxxl::request_interface::wait().
|
inline |
Definition at line 253 of file node.h.
Referenced by stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::balance(), stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::bulk_construction(), stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::erase(), stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::fuse(), stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::insert(), and stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::insert_into_root().
|
inline |
Definition at line 224 of file node.h.
Referenced by stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::bulk_construction(), and stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::erase().
|
inline |
Definition at line 547 of file node.h.
References STXXL_VERBOSE1, and stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::upper_bound().
Referenced by stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::upper_bound(), and stxxl::btree::btree< KeyType, DataType, CompareType, RawNodeSize, RawLeafSize, PDAllocStrategy >::upper_bound().
|
inline |
Definition at line 579 of file node.h.
References STXXL_VERBOSE1, and stxxl::btree::normal_node< KeyType, KeyCmp, RawSize, BTreeType >::upper_bound().
|
private |
|
private |
|
private |
|
private |