Public Member Functions

block_manager Class Reference
[Block management layer]

Block manager class. More...

#include <mng.h>

Collaboration diagram for block_manager:
Collaboration graph
[legend]

List of all members.

Public Member Functions

template<class DiskAssgnFunctor , class BIDIteratorClass >
void new_blocks (DiskAssgnFunctor functor, BIDIteratorClass bidbegin, BIDIteratorClass bidend)
 Allocates new blocks.
template<class BlockType , class DiskAssgnFunctor , class BIDIteratorClass >
void new_blocks (const unsigned_type nblocks, DiskAssgnFunctor functor, BIDIteratorClass out)
template<class BIDIteratorClass >
void delete_blocks (const BIDIteratorClass &bidbegin, const BIDIteratorClass &bidend)
 Deallocates blocks.
template<unsigned BLK_SIZE>
void delete_block (const BID< BLK_SIZE > &bid)
 Deallocates a block.

Detailed Description

Block manager class.

Manages allocation and deallocation of blocks in multiple/single disk setting

Remarks:
is a singleton

Member Function Documentation

template<class BlockType , class DiskAssgnFunctor , class BIDIteratorClass >
void block_manager::new_blocks ( const unsigned_type  nblocks,
DiskAssgnFunctor  functor,
BIDIteratorClass  out 
)

Allocates new blocks according to the strategy given by functor and stores block identifiers to the output iterator out

Parameters:
nblocks the number of blocks to allocate
functor object of model of allocation_strategy concept
out iterator object of OutputIterator concept

The BlockType template parameter defines the type of block to allocate


The documentation for this class was generated from the following files: