|
LibreOffice Module store (master) 1
|
#include <stortree.hxx>
Public Member Functions | |
| OStoreBTreeRootObject (std::shared_ptr< PageData > const &rxPage=std::shared_ptr< PageData >()) | |
| storeError | loadOrCreate (sal_uInt32 nAddr, OStorePageBIOS &rBIOS) |
| storeError | find_lookup (OStoreBTreeNodeObject &rNode, sal_uInt16 &rIndex, OStorePageKey const &rKey, OStorePageBIOS &rBIOS) const |
| find_lookup (w/o split()). More... | |
| storeError | find_insert (OStoreBTreeNodeObject &rNode, sal_uInt16 &rIndex, OStorePageKey const &rKey, OStorePageBIOS &rBIOS) |
| find_insert (possibly with split()). More... | |
Public Member Functions inherited from store::OStoreBTreeNodeObject | |
| OStoreBTreeNodeObject (std::shared_ptr< PageData > const &rxPage=std::shared_ptr< PageData >()) | |
| virtual storeError | guard (sal_uInt32 nAddr) override |
| virtual storeError | verify (sal_uInt32 nAddr) const override |
| storeError | split (sal_uInt16 nIndexL, PageHolderObject< page > &rxPageL, OStorePageBIOS &rBIOS) |
| split. More... | |
| storeError | remove (sal_uInt16 nIndexL, OStoreBTreeEntry &rEntryL, OStorePageBIOS &rBIOS) |
| remove (down to leaf node, recursive). More... | |
Public Member Functions inherited from store::OStorePageObject | |
| bool | dirty () const |
| State. More... | |
| void | clean () |
| void | touch () |
| sal_uInt32 | location () const |
| Location. More... | |
| template<class U > | |
| PageHolderObject< U > | makeHolder () const |
| template<class U > | |
| storeError | construct (rtl::Reference< PageData::Allocator > const &rxAllocator) |
| std::shared_ptr< PageData > & | get () |
| virtual storeError | guard (sal_uInt32 nAddr)=0 |
| virtual storeError | verify (sal_uInt32 nAddr) const =0 |
Private Types | |
| typedef OStoreBTreeNodeObject | base |
| typedef OStoreBTreeNodeData | page |
| typedef OStoreBTreeEntry | T |
Private Member Functions | |
| void | testInvariant (char const *message) const |
| testInvariant. More... | |
| storeError | change (PageHolderObject< page > &rxPageL, OStorePageBIOS &rBIOS) |
| change (Root). More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from store::OStorePageObject | |
| static void * | operator new (size_t n) |
| Allocation. More... | |
| static void | operator delete (void *p) |
Protected Member Functions inherited from store::OStorePageObject | |
| OStorePageObject (std::shared_ptr< PageData > rxPage) | |
| Construction. More... | |
| virtual | ~OStorePageObject () |
| Destruction. More... | |
Protected Attributes inherited from store::OStorePageObject | |
| std::shared_ptr< PageData > | m_xPage |
| Representation. More... | |
| bool | m_bDirty |
Definition at line 197 of file stortree.hxx.
|
private |
Definition at line 199 of file stortree.hxx.
|
private |
Definition at line 200 of file stortree.hxx.
|
private |
Definition at line 202 of file stortree.hxx.
|
inlineexplicit |
Definition at line 205 of file stortree.hxx.
|
private |
change (Root).
| rxPageL | [out] prev. root (needs split) |
Definition at line 296 of file stortree.cxx.
References store::OStorePageBIOS::allocate(), store::OStorePageBIOS::allocator(), store::PageHolderObject< T >::construct(), store::PageHolderObject< T >::get(), store::OStoreBTreeEntry::m_aLink, store::OStorePageObject::m_xPage, store::OStorePageBIOS::saveObjectAt(), store_E_None, store_E_OutOfMemory, store::PageHolderObject< T >::swap(), and testInvariant().
Referenced by find_insert().
| storeError OStoreBTreeRootObject::find_insert | ( | OStoreBTreeNodeObject & | rNode, |
| sal_uInt16 & | rIndex, | ||
| OStorePageKey const & | rKey, | ||
| OStorePageBIOS & | rBIOS | ||
| ) |
find_insert (possibly with split()).
Precond: root node page loaded.
Definition at line 405 of file stortree.cxx.
References change(), store::OStoreBTreeEntry::compare(), store::OStoreBTreeEntry::COMPARE_EQUAL, store::OStoreBTreeEntry::COMPARE_LESS, store::OStorePageObject::get(), i, store::OStorePageBIOS::loadObjectAt(), store::PageData::location(), store::OStorePageObject::m_xPage, store::OStorePageObject::makeHolder(), n, result, SAL_WARN, store::OStoreBTreeNodeObject::split(), store_E_AlreadyExists, store_E_None, store_E_NotExists, store_E_Unknown, STORE_PAGE_NULL, and testInvariant().
Referenced by store::OStorePageManager::save_dirpage_Impl().
| storeError OStoreBTreeRootObject::find_lookup | ( | OStoreBTreeNodeObject & | rNode, |
| sal_uInt16 & | rIndex, | ||
| OStorePageKey const & | rKey, | ||
| OStorePageBIOS & | rBIOS | ||
| ) | const |
find_lookup (w/o split()).
Precond: root node page loaded.
Definition at line 338 of file stortree.cxx.
References store::OStoreBTreeEntry::compare(), store::OStoreBTreeEntry::COMPARE_LESS, store::OStorePageObject::get(), i, store::OStorePageBIOS::loadObjectAt(), store::PageData::location(), store::OStorePageObject::m_xPage, store::OStorePageObject::makeHolder(), n, SAL_WARN, store_E_None, store_E_NotExists, store_E_Unknown, STORE_PAGE_NULL, and testInvariant().
Referenced by store::OStorePageManager::find_lookup(), and store::OStorePageManager::iterate().
| storeError OStoreBTreeRootObject::loadOrCreate | ( | sal_uInt32 | nAddr, |
| OStorePageBIOS & | rBIOS | ||
| ) |
Definition at line 275 of file stortree.cxx.
References store::OStorePageBIOS::allocate(), store::OStorePageBIOS::allocator(), store::OStorePageBIOS::loadObjectAt(), store_E_None, store_E_NotExists, store_E_Pending, and testInvariant().
Referenced by store::OStorePageManager::initialize().
|
private |
testInvariant.
Precond: root node page loaded.
Definition at line 269 of file stortree.cxx.
References store::OStorePageObject::m_xPage, and SAL_WARN_IF.
Referenced by change(), find_insert(), find_lookup(), and loadOrCreate().