STXXL
1.4-dev
|
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) |
![]() | |
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 |