2011-07-22 20:39:56 +05:30
|
|
|
#ifndef SPACE_MAP_DISK_H
|
|
|
|
#define SPACE_MAP_DISK_H
|
|
|
|
|
2011-08-31 18:08:22 +05:30
|
|
|
#include "btree_checker.h"
|
2011-07-22 20:39:56 +05:30
|
|
|
#include "space_map.h"
|
|
|
|
|
|
|
|
//----------------------------------------------------------------
|
|
|
|
|
|
|
|
namespace persistent_data {
|
2011-08-31 17:18:41 +05:30
|
|
|
class checked_space_map : public persistent_space_map {
|
|
|
|
public:
|
|
|
|
typedef boost::shared_ptr<checked_space_map> ptr;
|
2011-07-22 20:39:56 +05:30
|
|
|
|
2011-08-31 17:18:41 +05:30
|
|
|
virtual void check(block_counter &counter) const = 0;
|
|
|
|
};
|
2011-07-22 20:39:56 +05:30
|
|
|
|
2011-08-31 17:18:41 +05:30
|
|
|
checked_space_map::ptr
|
|
|
|
create_disk_sm(transaction_manager::ptr tm, block_address nr_blocks);
|
2011-08-24 18:57:45 +05:30
|
|
|
|
2011-08-31 17:18:41 +05:30
|
|
|
checked_space_map::ptr
|
|
|
|
open_disk_sm(transaction_manager::ptr tm, void *root);
|
2011-07-22 20:39:56 +05:30
|
|
|
|
2011-08-31 17:18:41 +05:30
|
|
|
checked_space_map::ptr
|
|
|
|
open_metadata_sm(transaction_manager::ptr tm, void * root);
|
2011-07-22 20:39:56 +05:30
|
|
|
}
|
|
|
|
|
|
|
|
//----------------------------------------------------------------
|
|
|
|
|
|
|
|
#endif
|