![]() |
Modules | |
Block scheduling sublayer | |
Allocation functors | |
Classes | |
struct | BID< SIZE > |
Block identifier class. More... | |
struct | BID< 0 > |
Specialization of block identifier class (BID) for variable size block size. More... | |
class | element_block< T, Size_ > |
Contains data elements for stxxl::typed_block , not intended for direct use. More... | |
class | block_w_bids< T, Size_, RawSize_, NBids_ > |
Contains BID references for stxxl::typed_block , not intended for direct use. More... | |
class | block_w_info< T_, RawSize_, NBids_, InfoType_ > |
Contains per block information for stxxl::typed_block , not intended for direct use. More... | |
class | typed_block< RawSize_, T_, NRef_, InfoType_ > |
Block containing elements of fixed length. More... | |
class | config |
Access point to disks properties. More... | |
class | block_manager |
Block manager class. More... | |
Functions | |
template<class BlockType, class DiskAssgnFunctor, class BIDIteratorClass> | |
void | block_manager::new_blocks (const unsigned_type nblocks, DiskAssgnFunctor functor, BIDIteratorClass out) |
template<class DiskAssgnFunctor, class BIDIteratorClass> | |
void | block_manager::new_blocks (DiskAssgnFunctor functor, BIDIteratorClass bidbegin, BIDIteratorClass bidend) |
Allocates new blocks. | |
template<unsigned BLK_SIZE> | |
void | block_manager::delete_block (const BID< BLK_SIZE > &bid) |
Deallocates a block. | |
template<class BIDIteratorClass> | |
void | block_manager::delete_blocks (const BIDIteratorClass &bidbegin, const BIDIteratorClass &bidend) |
Deallocates blocks. |
void block_manager::delete_block | ( | const BID< BLK_SIZE > & | bid | ) | [inline, inherited] |
Deallocates a block.
bid | block identifier |
References file::get_disk_number(), and BID< SIZE >::storage.
Referenced by block_manager::delete_blocks(), ksort(), queue< ValTp, BlkSz, AllocStr, SzTp >::pop(), and sort().
void block_manager::delete_blocks | ( | const BIDIteratorClass & | bidbegin, | |
const BIDIteratorClass & | bidend | |||
) | [inline, inherited] |
Deallocates blocks.
Deallocates blocks in the range [ bidbegin, bidend)
bidbegin | iterator object of bid_iterator concept | |
bidend | iterator object of bid_iterator concept |
References block_manager::delete_block().
void block_manager::new_blocks | ( | DiskAssgnFunctor | functor, | |
BIDIteratorClass | bidbegin, | |||
BIDIteratorClass | bidend | |||
) | [inline, inherited] |
Allocates new blocks.
Allocates new blocks according to the strategy given by functor and stores block identifiers to the range [ bidbegin, bidend)
functor | object of model of allocation_strategy concept | |
bidbegin | bidirectional BID iterator object | |
bidend | bidirectional BID iterator object |
Referenced by stream::runs_creator< from_sorted_sequences< ValueType_ >, Cmp_, BlockSize_, AllocStr_ >::finish(), ksort(), stream::runs_creator< from_sorted_sequences< ValueType_ >, Cmp_, BlockSize_, AllocStr_ >::push(), stream::runs_creator< use_push< ValueType_ >, Cmp_, BlockSize_, AllocStr_ >::push(), queue< ValTp, BlkSz, AllocStr, SzTp >::push(), and sort().
void block_manager::new_blocks | ( | const unsigned_type | nblocks, | |
DiskAssgnFunctor | functor, | |||
OutputIterator | out | |||
) | [inline, inherited] |
Allocates new blocks according to the strategy given by functor and stores block identifiers to the output iterator out
nblocks | the number of blocks to allocate | |
functor | object of model of allocation_strategy concept | |
out | iterator object of OutputIterator concept |
BlockType
template parameter defines the type of block to allocate