|
libmoost
|
*** This class is NOT thread safe *** More...
#include <kvds_page_store.hpp>
Classes | |
| class | Store |
Public Types | |
| typedef pagemap_t | store_type |
Public Member Functions | |
| KvdsPageStore () | |
| ~KvdsPageStore () | |
| pagemap_t & | get_pagemap () |
| void | open (char const dsname[], bool newdb=false) |
| void | save () |
| void | close () |
| store_type & | get_store () |
| bool | put (void const *pkey, size_t const ksize, void const *pval, size_t const vsize) |
| Overwrites existing values. | |
| bool | get (void const *pkey, size_t const ksize, void *pval, size_t &vsize) |
| bool | add (void const *pkey, size_t const ksize, void const *pval, size_t const vsize) |
| Appends to existing values. | |
| bool | all (void const *pkey, size_t const ksize, void *pval, size_t &vsize) |
| bool | xst (void const *pkey, size_t const ksize) |
| bool | del (void const *pkey, size_t const ksize) |
| bool | clr () |
| bool | beg () |
| bool | nxt (void *pkey, size_t &ksize) |
| bool | end () |
| bool | siz (void const *pkey, size_t const ksize, size_t &vsize) |
| bool | cnt (boost::uint64_t &cnt) |
| bool | nil (bool &isnil) |
Private Types | |
| typedef size_t | page_size_t |
| typedef PageMapT | pagemap_t |
| typedef boost::uint8_t | storeid_t |
| typedef PageMapT::itemid_t | itemid_t |
| typedef PageMapT::pageinfo_t | pageinfo_t |
| typedef boost::shared_ptr< Store > | store_t |
| typedef moost::container::sparse_hash_map < storeid_t, store_t > | store_index_t |
| typedef std::bitset< sizeof(page_size_t)*8 > | store_inventory_t |
Private Member Functions | |
| std::string | trim_inventory_string (std::string s) const |
| void | save_impl (bool bClose=false) |
| storeid_t const * | get_storeid (page_size_t page_size) |
| store_t | get_store (storeid_t const id) const |
Private Attributes | |
| std::string | dsname_ |
| std::string | pagemap_fname_ |
| std::string | storeinv_fname_ |
| pagemap_t | pagemap_ |
| pagemap_t::const_iterator | itr_ |
| store_index_t | store_index_ |
| store_inventory_t | store_inventory_ |
| bool | iterating_ |
*** This class is NOT thread safe ***
Definition at line 647 of file kvds_page_store.hpp.
typedef PageMapT::itemid_t moost::kvds::KvdsPageStore< PageMapT >::itemid_t [private] |
Definition at line 653 of file kvds_page_store.hpp.
typedef size_t moost::kvds::KvdsPageStore< PageMapT >::page_size_t [private] |
Definition at line 650 of file kvds_page_store.hpp.
typedef PageMapT::pageinfo_t moost::kvds::KvdsPageStore< PageMapT >::pageinfo_t [private] |
Definition at line 654 of file kvds_page_store.hpp.
typedef PageMapT moost::kvds::KvdsPageStore< PageMapT >::pagemap_t [private] |
Definition at line 651 of file kvds_page_store.hpp.
typedef moost::container::sparse_hash_map<storeid_t, store_t> moost::kvds::KvdsPageStore< PageMapT >::store_index_t [private] |
Definition at line 1179 of file kvds_page_store.hpp.
typedef std::bitset<sizeof(page_size_t) * 8> moost::kvds::KvdsPageStore< PageMapT >::store_inventory_t [private] |
Definition at line 1180 of file kvds_page_store.hpp.
typedef boost::shared_ptr<Store> moost::kvds::KvdsPageStore< PageMapT >::store_t [private] |
Definition at line 1178 of file kvds_page_store.hpp.
| typedef pagemap_t moost::kvds::KvdsPageStore< PageMapT >::store_type |
Definition at line 1183 of file kvds_page_store.hpp.
typedef boost::uint8_t moost::kvds::KvdsPageStore< PageMapT >::storeid_t [private] |
Definition at line 652 of file kvds_page_store.hpp.
| moost::kvds::KvdsPageStore< PageMapT >::KvdsPageStore | ( | ) | [inline] |
Definition at line 1185 of file kvds_page_store.hpp.
| moost::kvds::KvdsPageStore< PageMapT >::~KvdsPageStore | ( | ) | [inline] |
| bool moost::kvds::KvdsPageStore< PageMapT >::add | ( | void const * | pkey, |
| size_t const | ksize, | ||
| void const * | pval, | ||
| size_t const | vsize | ||
| ) | [inline] |
Appends to existing values.
Definition at line 1400 of file kvds_page_store.hpp.

| bool moost::kvds::KvdsPageStore< PageMapT >::all | ( | void const * | pkey, |
| size_t const | ksize, | ||
| void * | pval, | ||
| size_t & | vsize | ||
| ) | [inline] |
| bool moost::kvds::KvdsPageStore< PageMapT >::beg | ( | ) | [inline] |
Definition at line 1533 of file kvds_page_store.hpp.
| void moost::kvds::KvdsPageStore< PageMapT >::close | ( | ) | [inline] |
Definition at line 1263 of file kvds_page_store.hpp.


| bool moost::kvds::KvdsPageStore< PageMapT >::clr | ( | ) | [inline] |
Definition at line 1517 of file kvds_page_store.hpp.
| bool moost::kvds::KvdsPageStore< PageMapT >::cnt | ( | boost::uint64_t & | cnt | ) | [inline] |
Definition at line 1582 of file kvds_page_store.hpp.
| bool moost::kvds::KvdsPageStore< PageMapT >::del | ( | void const * | pkey, |
| size_t const | ksize | ||
| ) | [inline] |
| bool moost::kvds::KvdsPageStore< PageMapT >::end | ( | ) | [inline] |
Definition at line 1559 of file kvds_page_store.hpp.
| bool moost::kvds::KvdsPageStore< PageMapT >::get | ( | void const * | pkey, |
| size_t const | ksize, | ||
| void * | pval, | ||
| size_t & | vsize | ||
| ) | [inline] |
| pagemap_t& moost::kvds::KvdsPageStore< PageMapT >::get_pagemap | ( | ) | [inline] |
Definition at line 1193 of file kvds_page_store.hpp.
| store_t moost::kvds::KvdsPageStore< PageMapT >::get_store | ( | storeid_t const | id | ) | const [inline, private] |
Definition at line 1316 of file kvds_page_store.hpp.
| store_type& moost::kvds::KvdsPageStore< PageMapT >::get_store | ( | ) | [inline] |
For the purposes of external configuration we return a reference to the pagemap so the any pagemap specific settings (such as itemcnt, deleted or erased key) can be set
Definition at line 1333 of file kvds_page_store.hpp.

| storeid_t const* moost::kvds::KvdsPageStore< PageMapT >::get_storeid | ( | page_size_t | page_size | ) | [inline, private] |
Definition at line 1296 of file kvds_page_store.hpp.


| bool moost::kvds::KvdsPageStore< PageMapT >::nil | ( | bool & | isnil | ) | [inline] |
Definition at line 1588 of file kvds_page_store.hpp.
| bool moost::kvds::KvdsPageStore< PageMapT >::nxt | ( | void * | pkey, |
| size_t & | ksize | ||
| ) | [inline] |
Definition at line 1539 of file kvds_page_store.hpp.
| void moost::kvds::KvdsPageStore< PageMapT >::open | ( | char const | dsname[], |
| bool | newdb = false |
||
| ) | [inline] |
Definition at line 1198 of file kvds_page_store.hpp.


| bool moost::kvds::KvdsPageStore< PageMapT >::put | ( | void const * | pkey, |
| size_t const | ksize, | ||
| void const * | pval, | ||
| size_t const | vsize | ||
| ) | [inline] |
Overwrites existing values.
Definition at line 1338 of file kvds_page_store.hpp.

| void moost::kvds::KvdsPageStore< PageMapT >::save | ( | ) | [inline] |
| void moost::kvds::KvdsPageStore< PageMapT >::save_impl | ( | bool | bClose = false | ) | [inline, private] |
| bool moost::kvds::KvdsPageStore< PageMapT >::siz | ( | void const * | pkey, |
| size_t const | ksize, | ||
| size_t & | vsize | ||
| ) | [inline] |
| std::string moost::kvds::KvdsPageStore< PageMapT >::trim_inventory_string | ( | std::string | s | ) | const [inline, private] |
| bool moost::kvds::KvdsPageStore< PageMapT >::xst | ( | void const * | pkey, |
| size_t const | ksize | ||
| ) | [inline] |
std::string moost::kvds::KvdsPageStore< PageMapT >::dsname_ [private] |
Definition at line 1595 of file kvds_page_store.hpp.
bool moost::kvds::KvdsPageStore< PageMapT >::iterating_ [private] |
Definition at line 1602 of file kvds_page_store.hpp.
pagemap_t::const_iterator moost::kvds::KvdsPageStore< PageMapT >::itr_ [private] |
Definition at line 1599 of file kvds_page_store.hpp.
pagemap_t moost::kvds::KvdsPageStore< PageMapT >::pagemap_ [private] |
Definition at line 1598 of file kvds_page_store.hpp.
std::string moost::kvds::KvdsPageStore< PageMapT >::pagemap_fname_ [private] |
Definition at line 1596 of file kvds_page_store.hpp.
store_index_t moost::kvds::KvdsPageStore< PageMapT >::store_index_ [private] |
Definition at line 1600 of file kvds_page_store.hpp.
store_inventory_t moost::kvds::KvdsPageStore< PageMapT >::store_inventory_ [private] |
Definition at line 1601 of file kvds_page_store.hpp.
std::string moost::kvds::KvdsPageStore< PageMapT >::storeinv_fname_ [private] |
Definition at line 1597 of file kvds_page_store.hpp.