LibreOffice Module store (master) 1
Public Member Functions | Private Types | Private Member Functions | List of all members
store::OStoreDirectoryPageObject Class Reference

#include <stordata.hxx>

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

Public Member Functions

 OStoreDirectoryPageObject (std::shared_ptr< PageData > const &rxPage=std::shared_ptr< PageData >())
 Construction. More...
 
virtual storeError guard (sal_uInt32 nAddr) override
 External representation. More...
 
virtual storeError verify (sal_uInt32 nAddr) const override
 
sal_uInt32 attrib () const
 attrib. More...
 
void attrib (sal_uInt32 nAttrib)
 
void key (OStorePageKey const &rKey)
 key. More...
 
sal_uInt32 path () const
 path. More...
 
sal_uInt32 dataLength () const
 dataLength. More...
 
void dataLength (sal_uInt32 nLength)
 
sal_uInt32 directLink (sal_uInt16 nIndex) const
 direct. More...
 
void directLink (sal_uInt16 nIndex, sal_uInt32 nAddr)
 
sal_uInt32 singleLink (sal_uInt16 nIndex) const
 single indirect. More...
 
void singleLink (sal_uInt16 nIndex, sal_uInt32 nAddr)
 
sal_uInt32 doubleLink (sal_uInt16 nIndex) const
 double indirect. More...
 
void doubleLink (sal_uInt16 nIndex, sal_uInt32 nAddr)
 
sal_uInt32 tripleLink (sal_uInt16 nIndex) const
 triple indirect. More...
 
void tripleLink (sal_uInt16 nIndex, sal_uInt32 nAddr)
 
storeError read (sal_uInt32 nPage, OStoreDataPageObject &rData, OStorePageBIOS &rBIOS) const
 read (external data page). More...
 
storeError write (sal_uInt32 nPage, OStoreDataPageObject &rData, OStorePageBIOS &rBIOS)
 write (external data page). More...
 
storeError truncate (sal_uInt32 nPage, OStorePageBIOS &rBIOS)
 truncate (external data page). 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 OStorePageObject base
 
typedef OStoreDirectoryPageData page
 
typedef OStoreIndirectionPageData indirect
 
typedef OStorePageDescriptor D
 

Private Member Functions

pagePAGE ()
 Representation. More...
 
page const & PAGE () const
 
page::ChunkScope scope (sal_uInt32 nPage, page::DataBlock::LinkDescriptor &rDescr) const
 scope (external data page; private). More...
 
storeError truncate (page::ChunkScope eScope, sal_uInt16 nRemain, OStorePageBIOS &rBIOS)
 truncate (external data page scope; private). 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< PageDatam_xPage
 Representation. More...
 
bool m_bDirty
 

Detailed Description

Definition at line 586 of file stordata.hxx.

Member Typedef Documentation

◆ base

Definition at line 588 of file stordata.hxx.

◆ D

Definition at line 592 of file stordata.hxx.

◆ indirect

Definition at line 590 of file stordata.hxx.

◆ page

Definition at line 589 of file stordata.hxx.

Constructor & Destructor Documentation

◆ OStoreDirectoryPageObject()

store::OStoreDirectoryPageObject::OStoreDirectoryPageObject ( std::shared_ptr< PageData > const &  rxPage = std::shared_ptr<PageData>())
inlineexplicit

Construction.

Definition at line 597 of file stordata.hxx.

Member Function Documentation

◆ attrib() [1/2]

sal_uInt32 store::OStoreDirectoryPageObject::attrib ( ) const
inline

◆ attrib() [2/2]

void store::OStoreDirectoryPageObject::attrib ( sal_uInt32  nAttrib)
inline

◆ dataLength() [1/2]

sal_uInt32 store::OStoreDirectoryPageObject::dataLength ( ) const
inline

◆ dataLength() [2/2]

void store::OStoreDirectoryPageObject::dataLength ( sal_uInt32  nLength)
inline

◆ directLink() [1/2]

sal_uInt32 store::OStoreDirectoryPageObject::directLink ( sal_uInt16  nIndex) const
inline

◆ directLink() [2/2]

void store::OStoreDirectoryPageObject::directLink ( sal_uInt16  nIndex,
sal_uInt32  nAddr 
)
inline

◆ doubleLink() [1/2]

sal_uInt32 store::OStoreDirectoryPageObject::doubleLink ( sal_uInt16  nIndex) const
inline

double indirect.

Definition at line 674 of file stordata.hxx.

References store::OStoreDirectoryDataBlock::doubleLink(), store::OStoreDirectoryPageData::m_aDataBlock, nIndex, and PAGE().

Referenced by read(), truncate(), and write().

◆ doubleLink() [2/2]

void store::OStoreDirectoryPageObject::doubleLink ( sal_uInt16  nIndex,
sal_uInt32  nAddr 
)
inline

◆ guard()

storeError OStoreDirectoryPageObject::guard ( sal_uInt32  nAddr)
overridevirtual

External representation.

Implements store::OStorePageObject.

Definition at line 533 of file stordata.cxx.

References store::PageHolderObject< T >::guard(), and store::OStorePageObject::m_xPage.

◆ key()

void store::OStoreDirectoryPageObject::key ( OStorePageKey const &  rKey)
inline

◆ PAGE() [1/2]

page & store::OStoreDirectoryPageObject::PAGE ( )
inlineprivate

Representation.

Definition at line 719 of file stordata.hxx.

References store::OStorePageObject::m_xPage.

Referenced by attrib(), dataLength(), directLink(), doubleLink(), key(), path(), scope(), singleLink(), and tripleLink().

◆ PAGE() [2/2]

page const & store::OStoreDirectoryPageObject::PAGE ( ) const
inlineprivate

Definition at line 725 of file stordata.hxx.

References store::OStorePageObject::m_xPage.

◆ path()

sal_uInt32 store::OStoreDirectoryPageObject::path ( ) const
inline

path.

Definition at line 628 of file stordata.hxx.

References store::ntohl(), and PAGE().

Referenced by store::OStoreDirectory_Impl::create().

◆ read()

storeError OStoreDirectoryPageObject::read ( sal_uInt32  nPage,
OStoreDataPageObject rData,
OStorePageBIOS rBIOS 
) const

◆ scope()

OStoreDirectoryPageData::ChunkScope OStoreDirectoryPageObject::scope ( sal_uInt32  nPage,
page::DataBlock::LinkDescriptor &  rDescr 
) const
private

◆ singleLink() [1/2]

sal_uInt32 store::OStoreDirectoryPageObject::singleLink ( sal_uInt16  nIndex) const
inline

single indirect.

Definition at line 662 of file stordata.hxx.

References store::OStoreDirectoryPageData::m_aDataBlock, nIndex, PAGE(), and store::OStoreDirectoryDataBlock::singleLink().

Referenced by read(), truncate(), and write().

◆ singleLink() [2/2]

void store::OStoreDirectoryPageObject::singleLink ( sal_uInt16  nIndex,
sal_uInt32  nAddr 
)
inline

◆ tripleLink() [1/2]

sal_uInt32 store::OStoreDirectoryPageObject::tripleLink ( sal_uInt16  nIndex) const
inline

triple indirect.

Definition at line 686 of file stordata.hxx.

References store::OStoreDirectoryPageData::m_aDataBlock, nIndex, PAGE(), and store::OStoreDirectoryDataBlock::tripleLink().

Referenced by read(), truncate(), and write().

◆ tripleLink() [2/2]

void store::OStoreDirectoryPageObject::tripleLink ( sal_uInt16  nIndex,
sal_uInt32  nAddr 
)
inline

◆ truncate() [1/2]

storeError OStoreDirectoryPageObject::truncate ( page::ChunkScope  eScope,
sal_uInt16  nRemain,
OStorePageBIOS rBIOS 
)
private

◆ truncate() [2/2]

storeError OStoreDirectoryPageObject::truncate ( sal_uInt32  nPage,
OStorePageBIOS rBIOS 
)

◆ verify()

storeError OStoreDirectoryPageObject::verify ( sal_uInt32  nAddr) const
overridevirtual

◆ write()

storeError OStoreDirectoryPageObject::write ( sal_uInt32  nPage,
OStoreDataPageObject rData,
OStorePageBIOS rBIOS 
)

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