LibreOffice Module store (master) 1
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
store::OStorePageManager Class Reference

#include <storpage.hxx>

Inheritance diagram for store::OStorePageManager:
[legend]
Collaboration diagram for store::OStorePageManager:
[legend]

Public Member Functions

 OStorePageManager ()
 
virtual storeError initialize (ILockBytes *pLockBytes, storeAccessMode eAccessMode, sal_uInt16 &rnPageSize) override
 Initialization (two-phase construction). More...
 
bool isValid () const
 isValid. More...
 
storeError iget (OStoreDirectoryPageObject &rPage, sal_uInt32 nAttrib, const rtl_String *pPath, const rtl_String *pName, storeAccessMode eMode)
 
storeError iterate (OStorePageKey &rKey, OStorePageLink &rLink, sal_uInt32 &rAttrib)
 
storeError remove (const OStorePageKey &rKey)
 remove. More...
 
virtual bool isKindOf (sal_uInt32 nTypeId) override
 IStoreHandle. More...
 
- Public Member Functions inherited from store::OStorePageBIOS
 OStorePageBIOS ()
 
 operator osl::Mutex & (void) const
 Conversion into Mutex&. More...
 
virtual storeError initialize (ILockBytes *pLockBytes, storeAccessMode eAccessMode, sal_uInt16 &rnPageSize)
 Initialization. More...
 
rtl::Reference< PageData::Allocator > & allocator ()
 
storeError read (sal_uInt32 nAddr, void *pData, sal_uInt32 nSize) const
 
storeError write (sal_uInt32 nAddr, const void *pData, sal_uInt32 nSize) const
 
bool isWriteable () const
 
bool isValid () const
 
storeError acquirePage (const OStorePageDescriptor &rDescr, storeAccessMode eMode)
 
storeError releasePage (const OStorePageDescriptor &rDescr)
 
storeError allocate (OStorePageObject &rPage)
 
storeError free (sal_uInt32 nAddr)
 
storeError loadObjectAt (OStorePageObject &rPage, sal_uInt32 nAddr)
 Page I/O. More...
 
storeError saveObjectAt (OStorePageObject &rPage, sal_uInt32 nAddr)
 
storeError close ()
 close. More...
 
storeError flush ()
 flush. More...
 
- Public Member Functions inherited from store::OStoreObject
 OStoreObject ()
 
virtual bool isKindOf (sal_uInt32 nTypeId)
 Replaces dynamic_cast type checking. More...
 
- Public Member Functions inherited from salhelper::SimpleReferenceObject
 SimpleReferenceObject ()
 
void acquire ()
 
void release ()
 

Static Public Member Functions

static storeError namei (const rtl_String *pPath, const rtl_String *pName, OStorePageKey &rKey)
 DirectoryPage I/O (managed). More...
 
- Static Public Member Functions inherited from salhelper::SimpleReferenceObject
static void * operator new (std::size_t nSize)
 
static void * operator new (std::size_t nSize, std::nothrow_t const &rNothrow)
 
static void operator delete (void *pPtr)
 
static void operator delete (void *pPtr, std::nothrow_t const &rNothrow)
 

Protected Member Functions

virtual ~OStorePageManager () override
 
- Protected Member Functions inherited from store::OStorePageBIOS
virtual ~OStorePageBIOS () override
 
- Protected Member Functions inherited from store::OStoreObject
virtual ~OStoreObject () override
 
- Protected Member Functions inherited from salhelper::SimpleReferenceObject
virtual ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE
 

Private Types

typedef OStorePageBIOS base
 
typedef OStorePageManager self
 
typedef OStoreBTreeEntry entry
 
typedef OStoreBTreeNodeData page
 
typedef OStoreBTreeNodeObject node
 
typedef OStoreDirectoryPageData inode
 
typedef PageHolderObject< inodeinode_holder_type
 

Private Member Functions

storeError load_dirpage_Impl (const OStorePageKey &rKey, OStoreDirectoryPageObject &rPage)
 DirectoryPage I/O (managed). More...
 
storeError save_dirpage_Impl (const OStorePageKey &rKey, OStoreDirectoryPageObject &rPage)
 
storeError find_lookup (OStoreBTreeNodeObject &rNode, sal_uInt16 &rIndex, OStorePageKey const &rKey)
 find_lookup (node page and index, w/o split). More...
 
storeError remove_Impl (entry &rEntry)
 remove (possibly down from root). More...
 
 OStorePageManager (const OStorePageManager &)=delete
 
OStorePageManageroperator= (const OStorePageManager &)=delete
 

Private Attributes

OStoreBTreeRootObject m_aRoot
 Representation. More...
 

Static Private Attributes

static const sal_uInt32 m_nTypeId = sal_uInt32(0x62190120)
 IStoreHandle TypeId. More...
 

Friends

OStorePageManager *SAL_CALL query (OStoreObject *pHandle, OStorePageManager *)
 IStoreHandle query() template function specialization. More...
 

Additional Inherited Members

- Protected Attributes inherited from salhelper::SimpleReferenceObject
oslInterlockedCount m_nCount
 

Detailed Description

Definition at line 38 of file storpage.hxx.

Member Typedef Documentation

◆ base

Definition at line 90 of file storpage.hxx.

◆ entry

Definition at line 93 of file storpage.hxx.

◆ inode

Definition at line 97 of file storpage.hxx.

◆ inode_holder_type

Definition at line 98 of file storpage.hxx.

◆ node

Definition at line 95 of file storpage.hxx.

◆ page

Definition at line 94 of file storpage.hxx.

◆ self

Definition at line 91 of file storpage.hxx.

Constructor & Destructor Documentation

◆ OStorePageManager() [1/2]

OStorePageManager::OStorePageManager ( )

Definition at line 37 of file storpage.cxx.

◆ ~OStorePageManager()

OStorePageManager::~OStorePageManager ( )
overrideprotectedvirtual

Definition at line 41 of file storpage.cxx.

◆ OStorePageManager() [2/2]

store::OStorePageManager::OStorePageManager ( const OStorePageManager )
privatedelete

Member Function Documentation

◆ find_lookup()

storeError OStorePageManager::find_lookup ( OStoreBTreeNodeObject rNode,
sal_uInt16 &  rIndex,
OStorePageKey const &  rKey 
)
private

◆ iget()

storeError OStorePageManager::iget ( OStoreDirectoryPageObject rPage,
sal_uInt32  nAttrib,
const rtl_String *  pPath,
const rtl_String *  pName,
storeAccessMode  eMode 
)

◆ initialize()

storeError OStorePageManager::initialize ( ILockBytes pLockBytes,
storeAccessMode  eAccessMode,
sal_uInt16 &  rnPageSize 
)
overridevirtual

◆ isKindOf()

bool OStorePageManager::isKindOf ( sal_uInt32  nTypeId)
overridevirtual

IStoreHandle.

Reimplemented from store::OStoreObject.

Definition at line 45 of file storpage.cxx.

References m_nTypeId.

◆ isValid()

bool store::OStorePageManager::isValid ( ) const
inline

isValid.

Returns
sal_True upon successful initialization, sal_False otherwise.

Definition at line 138 of file storpage.hxx.

References store::OStorePageBIOS::isValid().

Referenced by iget(), iterate(), and remove().

◆ iterate()

storeError OStorePageManager::iterate ( OStorePageKey rKey,
OStorePageLink rLink,
sal_uInt32 &  rAttrib 
)

◆ load_dirpage_Impl()

storeError OStorePageManager::load_dirpage_Impl ( const OStorePageKey rKey,
OStoreDirectoryPageObject rPage 
)
private

◆ namei()

storeError OStorePageManager::namei ( const rtl_String *  pPath,
const rtl_String *  pName,
OStorePageKey rKey 
)
static

◆ operator=()

OStorePageManager & store::OStorePageManager::operator= ( const OStorePageManager )
privatedelete

◆ remove()

storeError OStorePageManager::remove ( const OStorePageKey rKey)

◆ remove_Impl()

storeError OStorePageManager::remove_Impl ( entry rEntry)
private

◆ save_dirpage_Impl()

storeError OStorePageManager::save_dirpage_Impl ( const OStorePageKey rKey,
OStoreDirectoryPageObject rPage 
)
private

Friends And Related Function Documentation

◆ query

OStorePageManager *SAL_CALL query ( OStoreObject pHandle,
OStorePageManager  
)
friend

IStoreHandle query() template function specialization.

Member Data Documentation

◆ m_aRoot

OStoreBTreeRootObject store::OStorePageManager::m_aRoot
private

Representation.

Definition at line 111 of file storpage.hxx.

Referenced by find_lookup(), initialize(), iterate(), remove_Impl(), and save_dirpage_Impl().

◆ m_nTypeId

const sal_uInt32 OStorePageManager::m_nTypeId = sal_uInt32(0x62190120)
staticprivate

IStoreHandle TypeId.

Definition at line 102 of file storpage.hxx.

Referenced by isKindOf(), and store::query().


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