libmoost
moost::kvds::KvdsPageMapIntrinsicKey< keyT > Class Template Reference

A intrinsic type pagemap. More...

#include <kvds_page_store.hpp>

List of all members.

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_tget_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_

Detailed Description

template<typename keyT>
class moost::kvds::KvdsPageMapIntrinsicKey< keyT >

A intrinsic type pagemap.

*** This class is NOT thread safe ***

Definition at line 334 of file kvds_page_store.hpp.


Member Typedef Documentation

template<typename keyT >
typedef storage_t::const_iterator moost::kvds::KvdsPageMapIntrinsicKey< keyT >::const_iterator

Definition at line 344 of file kvds_page_store.hpp.

template<typename keyT >
typedef boost::uint32_t moost::kvds::KvdsPageMapIntrinsicKey< keyT >::itemid_t

Definition at line 338 of file kvds_page_store.hpp.

template<typename keyT >
typedef storage_t::iterator moost::kvds::KvdsPageMapIntrinsicKey< keyT >::iterator

Definition at line 343 of file kvds_page_store.hpp.

template<typename keyT >
typedef keyT moost::kvds::KvdsPageMapIntrinsicKey< keyT >::key_type

Definition at line 340 of file kvds_page_store.hpp.

template<typename keyT >
typedef std::pair<storeid_t, itemid_t> moost::kvds::KvdsPageMapIntrinsicKey< keyT >::pageinfo_t

Definition at line 339 of file kvds_page_store.hpp.

template<typename keyT >
typedef storage_t::size_type moost::kvds::KvdsPageMapIntrinsicKey< keyT >::size_type

Definition at line 342 of file kvds_page_store.hpp.

template<typename keyT >
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.

template<typename keyT >
typedef boost::uint8_t moost::kvds::KvdsPageMapIntrinsicKey< keyT >::storeid_t

Definition at line 337 of file kvds_page_store.hpp.


Constructor & Destructor Documentation

template<typename keyT >
moost::kvds::KvdsPageMapIntrinsicKey< keyT >::KvdsPageMapIntrinsicKey ( ) [inline]

Definition at line 347 of file kvds_page_store.hpp.


Member Function Documentation

template<typename keyT >
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.

template<typename keyT >
void moost::kvds::KvdsPageMapIntrinsicKey< keyT >::clear ( ) [inline]

Definition at line 385 of file kvds_page_store.hpp.

template<typename keyT >
bool moost::kvds::KvdsPageMapIntrinsicKey< keyT >::empty ( ) const [inline]

Definition at line 383 of file kvds_page_store.hpp.

template<typename keyT >
iterator moost::kvds::KvdsPageMapIntrinsicKey< keyT >::end ( ) [inline]

Definition at line 377 of file kvds_page_store.hpp.

template<typename keyT >
void moost::kvds::KvdsPageMapIntrinsicKey< keyT >::erase ( iterator  itr) [inline]

Definition at line 395 of file kvds_page_store.hpp.

template<typename keyT >
iterator moost::kvds::KvdsPageMapIntrinsicKey< keyT >::find ( void const *  pkey,
size_t  const 
) [inline]

Definition at line 387 of file kvds_page_store.hpp.

template<typename keyT >
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.

template<typename keyT >
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.

template<typename keyT >
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.

Here is the call graph for this function:

template<typename keyT >
void moost::kvds::KvdsPageMapIntrinsicKey< keyT >::load ( std::string const &  fname,
bool  newdb 
) [inline]

Definition at line 430 of file kvds_page_store.hpp.

template<typename keyT >
void moost::kvds::KvdsPageMapIntrinsicKey< keyT >::resize ( size_type const  size) [inline]

Definition at line 381 of file kvds_page_store.hpp.

template<typename keyT >
void moost::kvds::KvdsPageMapIntrinsicKey< keyT >::save ( std::string const &  fname) [inline]

Definition at line 448 of file kvds_page_store.hpp.

template<typename keyT >
size_type moost::kvds::KvdsPageMapIntrinsicKey< keyT >::size ( ) const [inline]

Definition at line 379 of file kvds_page_store.hpp.

Here is the caller graph for this function:


Member Data Documentation

template<typename keyT >
storage_t moost::kvds::KvdsPageMapIntrinsicKey< keyT >::storage_ [private]

Definition at line 457 of file kvds_page_store.hpp.


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