Interface of a block scheduling algorithm. More...
#include <block_scheduler.h>


Public Member Functions | |
| block_scheduler_algorithm (block_scheduler_type &bs) | |
| block_scheduler_algorithm (block_scheduler_algorithm *old) | |
| virtual bool | evictable_blocks_empty ()=0 |
|
virtual swappable_block_identifier_type | evictable_blocks_pop ()=0 |
| virtual void | swappable_blocks_resize (swappable_block_identifier_type) |
| virtual internal_block_type & | acquire (const swappable_block_identifier_type sbid, const bool uninitialized=false)=0 |
| virtual void | release (swappable_block_identifier_type sbid, const bool dirty)=0 |
| virtual void | deinitialize (swappable_block_identifier_type sbid)=0 |
| virtual void | initialize (swappable_block_identifier_type sbid, external_block_type eblock)=0 |
| virtual external_block_type | extract_external_block (swappable_block_identifier_type sbid)=0 |
| virtual bool | is_initialized (const swappable_block_identifier_type sbid) const |
| virtual void | explicit_timestep () |
| virtual bool | is_simulating () const |
|
virtual const prediction_sequence_type & | get_prediction_sequence () const |
Public Attributes | |
| block_scheduler_type & | bs |
Protected Types | |
|
typedef block_scheduler < SwappableBlockType > | block_scheduler_type |
|
typedef block_scheduler_type::internal_block_type | internal_block_type |
|
typedef block_scheduler_type::external_block_type | external_block_type |
|
typedef block_scheduler_type::swappable_block_identifier_type | swappable_block_identifier_type |
|
typedef block_scheduler_type::prediction_sequence_type | prediction_sequence_type |
|
typedef block_scheduler_type::time_type | time_type |
Protected Member Functions | |
| block_scheduler_algorithm * | get_algorithm_from_block_scheduler () |
| internal_block_type * | get_free_internal_block_from_block_scheduler () |
| Get an internal_block from the block_scheduler. | |
| void | return_free_internal_block_to_block_scheduler (internal_block_type *iblock) |
| Return an internal_block to the block_scheduler. | |
Protected Attributes | |
| std::vector< SwappableBlockType > & | swappable_blocks |
| prediction_sequence_type | prediction_sequence |
Interface of a block scheduling algorithm.
| internal_block_type* block_scheduler_algorithm< SwappableBlockType >::get_free_internal_block_from_block_scheduler | ( | ) | [inline, protected] |
Get an internal_block from the block_scheduler.
References block_scheduler< SwappableBlockType >::get_free_internal_block().
| void block_scheduler_algorithm< SwappableBlockType >::return_free_internal_block_to_block_scheduler | ( | internal_block_type * | iblock | ) | [inline, protected] |
Return an internal_block to the block_scheduler.
References block_scheduler< SwappableBlockType >::return_free_internal_block().
1.7.1