STXXL
1.4-dev
|
Used to scan external memory with prefetching.
Public Types | |
enum | { block_size = block_type::size, subblock_size = subblock_type::size } |
typedef BidIterator | bid_iterator |
typedef bid_iterator::value_type | bid_type |
typedef cache_type::block_type | block_type |
typedef CacheType | cache_type |
typedef block_type::value_type | subblock_type |
typedef subblock_type::value_type | value_type |
Public Member Functions | |
buffered_reader (bid_iterator seq_begin, bid_iterator seq_end, cache_type &cache, internal_size_type i_subblock=0, bool prefetch=true) | |
Create a new buffered reader to read the blocks in [seq_begin, seq_end) More... | |
~buffered_reader () | |
const value_type & | const_value () |
Get const-reference to current value. More... | |
void | enable_prefetching () |
void | next_subblock () |
Skip remaining values of the current subblock. More... | |
bool | operator++ () |
Advance to the next value. More... | |
void | skip_to (bid_iterator bid, internal_size_type i_subblock) |
Continue reading at given block and subblock. More... | |
value_type & | value () |
Get reference to current value. The current value's block's dirty flag will be set. More... | |
Private Attributes | |
bid_iterator | begin_bid_ |
points to the beginning of the block-sequence More... | |
cache_type & | cache_ |
shared block-cache More... | |
bid_iterator | curr_bid_ |
points to the current block More... | |
bool | dirty_ |
current block dirty ? More... | |
bid_iterator | end_bid_ |
points to the end of the block-sequence More... | |
unsigned_type | i_value_ |
index within current block More... | |
unsigned_type | page_size_ |
pages, which are read at once from disk, consist of this many blocks More... | |
bid_iterator | pref_bid_ |
points to the next block to prefetch More... | |
bool | prefetch_ |
true if prefetching enabled More... | |
unsigned_type | prefetch_pages_ |
number of pages to prefetch More... | |
subblock_type * | subblock_ |
current subblock More... | |
Additional Inherited Members | |
![]() | |
noncopyable () | |
typedef BidIterator stxxl::hash_map::buffered_reader< CacheType, BidIterator >::bid_iterator |
typedef bid_iterator::value_type stxxl::hash_map::buffered_reader< CacheType, BidIterator >::bid_type |
typedef cache_type::block_type stxxl::hash_map::buffered_reader< CacheType, BidIterator >::block_type |
typedef CacheType stxxl::hash_map::buffered_reader< CacheType, BidIterator >::cache_type |
typedef block_type::value_type stxxl::hash_map::buffered_reader< CacheType, BidIterator >::subblock_type |
typedef subblock_type::value_type stxxl::hash_map::buffered_reader< CacheType, BidIterator >::value_type |
anonymous enum |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Skip remaining values of the current subblock.
Definition at line 258 of file util.h.
References operator++().
|
inline |
|
inline |
|
inline |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |