dlvhex
2.5.0
|
#include <vs10/bm/bmblocks.h>
Public Member Functions | |
block_opt_func (blocks_manager &bm, bm::word_t *temp_block, int opt_mode, bv_statistics *bv_stat=0) | |
void | on_empty_top (unsigned i) |
void | on_empty_block (unsigned) |
void | operator() (bm::word_t *block, unsigned idx) |
block_opt_func (blocks_manager &bm, bm::word_t *temp_block, int opt_mode, bv_statistics *bv_stat=0) | |
void | on_empty_top (unsigned i) |
void | on_empty_block (unsigned) |
void | operator() (bm::word_t *block, unsigned idx) |
Private Member Functions | |
void | free_block (gap_word_t *gap_blk, unsigned idx) |
void | free_block (gap_word_t *gap_blk, unsigned idx) |
Private Attributes | |
bm::word_t * | temp_block_ |
int | opt_mode_ |
bv_statistics * | stat_ |
unsigned | empty_ |
Bitblock optimization functor
Definition at line 319 of file bmblocks.h.
bm::blocks_manager< Alloc >::block_opt_func::block_opt_func | ( | blocks_manager & | bm, |
bm::word_t * | temp_block, | ||
int | opt_mode, | ||
bv_statistics * | bv_stat = 0 |
||
) | [inline] |
Definition at line 322 of file bmblocks.h.
bm::blocks_manager< Alloc >::block_opt_func::block_opt_func | ( | blocks_manager & | bm, |
bm::word_t * | temp_block, | ||
int | opt_mode, | ||
bv_statistics * | bv_stat = 0 |
||
) | [inline] |
Definition at line 322 of file bmblocks.h.
void bm::blocks_manager< Alloc >::block_opt_func::free_block | ( | gap_word_t * | gap_blk, |
unsigned | idx | ||
) | [inline, private] |
Definition at line 478 of file bmblocks.h.
References bm::blocks_manager< Alloc >::bm_func_base::bm_, bm::blocks_manager< Alloc >::get_allocator(), bm::blocks_manager< Alloc >::glen(), and bm::blocks_manager< Alloc >::set_block_bit().
Referenced by bm::blocks_manager< Alloc >::block_opt_func::operator()().
void bm::blocks_manager< Alloc >::block_opt_func::free_block | ( | gap_word_t * | gap_blk, |
unsigned | idx | ||
) | [inline, private] |
Definition at line 478 of file bmblocks.h.
References bm::blocks_manager< Alloc >::bm_func_base::bm_, bm::blocks_manager< Alloc >::get_allocator(), bm::blocks_manager< Alloc >::glen(), and bm::blocks_manager< Alloc >::set_block_bit().
void bm::blocks_manager< Alloc >::block_opt_func::on_empty_block | ( | unsigned | ) | [inline] |
Reimplemented from bm::blocks_manager< Alloc >::bm_func_base.
Definition at line 349 of file bmblocks.h.
References bm::blocks_manager< Alloc >::block_opt_func::empty_.
void bm::blocks_manager< Alloc >::block_opt_func::on_empty_block | ( | unsigned | ) | [inline] |
Reimplemented from bm::blocks_manager< Alloc >::bm_func_base.
Definition at line 349 of file bmblocks.h.
References bm::blocks_manager< Alloc >::block_opt_func::empty_.
void bm::blocks_manager< Alloc >::block_opt_func::on_empty_top | ( | unsigned | i | ) | [inline] |
Reimplemented from bm::blocks_manager< Alloc >::bm_func_base.
Definition at line 335 of file bmblocks.h.
References bm::blocks_manager< Alloc >::bm_func_base::bm_, bm::blocks_manager< Alloc >::get_allocator(), bm::blocks_manager< Alloc >::get_rootblock(), bm::bv_statistics::max_serialize_mem, and bm::blocks_manager< Alloc >::block_opt_func::stat_.
void bm::blocks_manager< Alloc >::block_opt_func::on_empty_top | ( | unsigned | i | ) | [inline] |
Reimplemented from bm::blocks_manager< Alloc >::bm_func_base.
Definition at line 335 of file bmblocks.h.
References bm::blocks_manager< Alloc >::bm_func_base::bm_, bm::blocks_manager< Alloc >::get_allocator(), bm::blocks_manager< Alloc >::get_rootblock(), bm::bv_statistics::max_serialize_mem, and bm::blocks_manager< Alloc >::block_opt_func::stat_.
void bm::blocks_manager< Alloc >::block_opt_func::operator() | ( | bm::word_t * | block, |
unsigned | idx | ||
) | [inline] |
Definition at line 351 of file bmblocks.h.
References bm::bv_statistics::add_bit_block(), bm::bv_statistics::add_gap_block(), bm::blocks_manager< Alloc >::allocate_gap_block(), bm::bit_convert_to_gap(), bm::bit_is_all_zero(), bm::blocks_manager< Alloc >::bm_func_base::bm_, BM_IS_GAP, BMGAP_PTR, bm::blocks_manager< Alloc >::block_opt_func::empty_, bm::blocks_manager< Alloc >::block_opt_func::free_block(), FULL_BLOCK_ADDR, bm::gap_calc_level(), bm::gap_capacity(), bm::gap_is_all_one(), bm::gap_is_all_zero(), bm::gap_length(), bm::gap_max_bits, bm::gap_max_level, bm::blocks_manager< Alloc >::get_allocator(), bm::blocks_manager< Alloc >::glen(), bm::is_bits_one(), IS_FULL_BLOCK, bm::bv_statistics::max_serialize_mem, bm::blocks_manager< Alloc >::block_opt_func::opt_mode_, bm::blocks_manager< Alloc >::set_block_gap(), bm::blocks_manager< Alloc >::set_block_ptr(), bm::set_block_size, bm::blocks_manager< Alloc >::block_opt_func::stat_, and bm::blocks_manager< Alloc >::block_opt_func::temp_block_.
void bm::blocks_manager< Alloc >::block_opt_func::operator() | ( | bm::word_t * | block, |
unsigned | idx | ||
) | [inline] |
Definition at line 351 of file bmblocks.h.
References bm::bv_statistics::add_bit_block(), bm::bv_statistics::add_gap_block(), bm::bit_convert_to_gap(), bm::bit_is_all_zero(), bm::blocks_manager< Alloc >::bm_func_base::bm_, BM_IS_GAP, BMGAP_PTR, bm::blocks_manager< Alloc >::block_opt_func::empty_, bm::blocks_manager< Alloc >::block_opt_func::free_block(), FULL_BLOCK_ADDR, bm::gap_calc_level(), bm::gap_capacity(), bm::gap_is_all_one(), bm::gap_is_all_zero(), bm::gap_length(), bm::gap_max_bits, bm::gap_max_level, bm::is_bits_one(), IS_FULL_BLOCK, bm::bv_statistics::max_serialize_mem, bm::blocks_manager< Alloc >::block_opt_func::opt_mode_, bm::set_block_size, bm::blocks_manager< Alloc >::block_opt_func::stat_, and bm::blocks_manager< Alloc >::block_opt_func::temp_block_.
unsigned bm::blocks_manager< Alloc >::block_opt_func::empty_ [private] |
Definition at line 489 of file bmblocks.h.
Referenced by bm::blocks_manager< Alloc >::block_opt_func::on_empty_block(), and bm::blocks_manager< Alloc >::block_opt_func::operator()().
int bm::blocks_manager< Alloc >::block_opt_func::opt_mode_ [private] |
Definition at line 487 of file bmblocks.h.
Referenced by bm::blocks_manager< Alloc >::block_opt_func::operator()().
bv_statistics * bm::blocks_manager< Alloc >::block_opt_func::stat_ [private] |
Definition at line 488 of file bmblocks.h.
Referenced by bm::blocks_manager< Alloc >::block_opt_func::on_empty_top(), and bm::blocks_manager< Alloc >::block_opt_func::operator()().
bm::word_t * bm::blocks_manager< Alloc >::block_opt_func::temp_block_ [private] |
Definition at line 486 of file bmblocks.h.
Referenced by bm::blocks_manager< Alloc >::block_opt_func::operator()().