libmoost
|
A intrinsic type pagemap. More...
#include <kvds_page_store.hpp>
Public Types | |
typedef boost::uint8_t | storeid_t |
typedef boost::uint32_t | itemid_t |
typedef std::pair< storeid_t, itemid_t > | pageinfo_t |
typedef keyT | key_type |
typedef moost::container::sparse_hash_map < key_type, pageinfo_t > | storage_t |
typedef storage_t::size_type | size_type |
typedef storage_t::iterator | iterator |
typedef storage_t::const_iterator | const_iterator |
Public Member Functions | |
KvdsPageMapIntrinsicKey () | |
storage_t & | get_storage () |
sparse hash map needs a call to set_deleted to allow deletions. | |
iterator | begin () |
iterator | end () |
size_type | size () const |
void | resize (size_type const size) |
bool | empty () const |
void | clear () |
iterator | find (void const *pkey, size_t const ) |
void | erase (iterator itr) |
iterator | insert (void const *pkey, size_t const , pageinfo_t const &page_info) |
bool | itr2key (const_iterator itr, void *pkey, size_t &ksize) const |
A generic method to convert an iterator to a key (page store has no idea how to do this) | |
void | load (std::string const &fname, bool newdb) |
void | save (std::string const &fname) |
Private Attributes | |
storage_t | storage_ |
A intrinsic type pagemap.
*** This class is NOT thread safe ***
Definition at line 334 of file kvds_page_store.hpp.
typedef storage_t::const_iterator moost::kvds::KvdsPageMapIntrinsicKey< keyT >::const_iterator |
Definition at line 344 of file kvds_page_store.hpp.
typedef boost::uint32_t moost::kvds::KvdsPageMapIntrinsicKey< keyT >::itemid_t |
Definition at line 338 of file kvds_page_store.hpp.
typedef storage_t::iterator moost::kvds::KvdsPageMapIntrinsicKey< keyT >::iterator |
Definition at line 343 of file kvds_page_store.hpp.
typedef keyT moost::kvds::KvdsPageMapIntrinsicKey< keyT >::key_type |
Definition at line 340 of file kvds_page_store.hpp.
typedef std::pair<storeid_t, itemid_t> moost::kvds::KvdsPageMapIntrinsicKey< keyT >::pageinfo_t |
Definition at line 339 of file kvds_page_store.hpp.
typedef storage_t::size_type moost::kvds::KvdsPageMapIntrinsicKey< keyT >::size_type |
Definition at line 342 of file kvds_page_store.hpp.
typedef moost::container::sparse_hash_map<key_type, pageinfo_t> moost::kvds::KvdsPageMapIntrinsicKey< keyT >::storage_t |
Definition at line 341 of file kvds_page_store.hpp.
typedef boost::uint8_t moost::kvds::KvdsPageMapIntrinsicKey< keyT >::storeid_t |
Definition at line 337 of file kvds_page_store.hpp.
moost::kvds::KvdsPageMapIntrinsicKey< keyT >::KvdsPageMapIntrinsicKey | ( | ) | [inline] |
Definition at line 347 of file kvds_page_store.hpp.
iterator moost::kvds::KvdsPageMapIntrinsicKey< keyT >::begin | ( | ) | [inline] |
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= INTERFACE: You MUST implement the following methods in your storage =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Definition at line 375 of file kvds_page_store.hpp.
void moost::kvds::KvdsPageMapIntrinsicKey< keyT >::clear | ( | ) | [inline] |
Definition at line 385 of file kvds_page_store.hpp.
bool moost::kvds::KvdsPageMapIntrinsicKey< keyT >::empty | ( | ) | const [inline] |
Definition at line 383 of file kvds_page_store.hpp.
iterator moost::kvds::KvdsPageMapIntrinsicKey< keyT >::end | ( | ) | [inline] |
Definition at line 377 of file kvds_page_store.hpp.
void moost::kvds::KvdsPageMapIntrinsicKey< keyT >::erase | ( | iterator | itr | ) | [inline] |
Definition at line 395 of file kvds_page_store.hpp.
iterator moost::kvds::KvdsPageMapIntrinsicKey< keyT >::find | ( | void const * | pkey, |
size_t | const | ||
) | [inline] |
Definition at line 387 of file kvds_page_store.hpp.
storage_t& moost::kvds::KvdsPageMapIntrinsicKey< keyT >::get_storage | ( | ) | [inline] |
sparse hash map needs a call to set_deleted to allow deletions.
Allow the client to apply any specific settings to the underlying storage. We need to do this to ensure the interface of each storage is consistance
Definition at line 366 of file kvds_page_store.hpp.
iterator moost::kvds::KvdsPageMapIntrinsicKey< keyT >::insert | ( | void const * | pkey, |
size_t | const, | ||
pageinfo_t const & | page_info | ||
) | [inline] |
Definition at line 401 of file kvds_page_store.hpp.
bool moost::kvds::KvdsPageMapIntrinsicKey< keyT >::itr2key | ( | const_iterator | itr, |
void * | pkey, | ||
size_t & | ksize | ||
) | const [inline] |
A generic method to convert an iterator to a key (page store has no idea how to do this)
Definition at line 411 of file kvds_page_store.hpp.
void moost::kvds::KvdsPageMapIntrinsicKey< keyT >::load | ( | std::string const & | fname, |
bool | newdb | ||
) | [inline] |
Definition at line 430 of file kvds_page_store.hpp.
void moost::kvds::KvdsPageMapIntrinsicKey< keyT >::resize | ( | size_type const | size | ) | [inline] |
Definition at line 381 of file kvds_page_store.hpp.
void moost::kvds::KvdsPageMapIntrinsicKey< keyT >::save | ( | std::string const & | fname | ) | [inline] |
Definition at line 448 of file kvds_page_store.hpp.
size_type moost::kvds::KvdsPageMapIntrinsicKey< keyT >::size | ( | ) | const [inline] |
storage_t moost::kvds::KvdsPageMapIntrinsicKey< keyT >::storage_ [private] |
Definition at line 457 of file kvds_page_store.hpp.