LibreOffice Module sot (master) 1
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
StgDirStrm Class Reference

#include <stgdir.hxx>

Inheritance diagram for StgDirStrm:
[legend]
Collaboration diagram for StgDirStrm:
[legend]

Public Member Functions

 StgDirStrm (StgIo &)
 
virtual ~StgDirStrm () override
 
virtual bool SetSize (sal_Int32) override
 
bool Store ()
 
void * GetEntry (sal_Int32 n, bool)
 
StgDirEntryGetRoot ()
 
StgDirEntryCreate (StgDirEntry &, const OUString &, StgEntryType)
 
- Public Member Functions inherited from StgDataStrm
 StgDataStrm (StgIo &, sal_Int32 nBgn, sal_Int32 nLen=-1)
 
 StgDataStrm (StgIo &, StgDirEntry &)
 
void * GetPtr (sal_Int32 nPos, bool bDirty)
 
void SetIncrement (short n)
 
virtual bool SetSize (sal_Int32) override
 
virtual sal_Int32 Read (void *, sal_Int32) override
 
virtual sal_Int32 Write (const void *, sal_Int32) override
 
- Public Member Functions inherited from StgStrm
virtual ~StgStrm ()
 
StgIoGetIo ()
 
sal_Int32 GetPos () const
 
sal_Int32 GetStart () const
 
sal_Int32 GetSize () const
 
sal_Int32 GetPage () const
 
sal_Int32 GetPages () const
 
short GetOffset () const
 
void SetEntry (StgDirEntry &)
 
virtual bool SetSize (sal_Int32)
 
virtual bool Pos2Page (sal_Int32 nBytePos)
 
virtual sal_Int32 Read (void *, sal_Int32)
 
virtual sal_Int32 Write (const void *, sal_Int32)
 
virtual bool IsSmallStrm () const
 

Static Public Member Functions

static StgDirEntryFind (StgDirEntry &, const OUString &)
 

Private Member Functions

void SetupEntry (sal_Int32, StgDirEntry *)
 

Private Attributes

StgDirEntrym_pRoot
 

Friends

class StgIterator
 

Additional Inherited Members

- Protected Member Functions inherited from StgStrm
sal_Int32 scanBuildPageChainCache ()
 
bool Copy (sal_Int32 nFrom, sal_Int32 nBytes)
 
void SetPos (sal_Int32 nPos, bool bValid)
 
 StgStrm (StgIo &)
 
- Protected Attributes inherited from StgStrm
StgIom_rIo
 
std::unique_ptr< StgFATm_pFat
 
StgDirEntrym_pEntry
 
sal_Int32 m_nStart
 
sal_Int32 m_nSize
 
sal_Int32 m_nPage
 
short m_nOffset
 
short m_nPageSize
 
std::vector< sal_Int32 > m_aPagesCache
 
o3tl::sorted_vector< sal_Int32 > m_aUsedPageNumbers
 

Detailed Description

Definition at line 85 of file stgdir.hxx.

Constructor & Destructor Documentation

◆ StgDirStrm()

StgDirStrm::StgDirStrm ( StgIo r)
explicit

◆ ~StgDirStrm()

StgDirStrm::~StgDirStrm ( )
overridevirtual

Definition at line 724 of file stgdir.cxx.

References m_pRoot.

Member Function Documentation

◆ Create()

StgDirEntry * StgDirStrm::Create ( StgDirEntry rStg,
const OUString &  rName,
StgEntryType  eType 
)

◆ Find()

StgDirEntry * StgDirStrm::Find ( StgDirEntry rStg,
const OUString &  rName 
)
static

Definition at line 884 of file stgdir.cxx.

References StgAvlNode::Find(), StgEntry::Init(), StgDirEntry::m_pDown, and StgEntry::SetName().

Referenced by Create().

◆ GetEntry()

void * StgDirStrm::GetEntry ( sal_Int32  n,
bool  bDirty 
)

Definition at line 876 of file stgdir.cxx.

References StgDataStrm::GetPtr(), StgStrm::m_nSize, n, and STGENTRY_SIZE.

Referenced by SetupEntry(), and Store().

◆ GetRoot()

StgDirEntry * StgDirStrm::GetRoot ( )
inline

Definition at line 96 of file stgdir.hxx.

References m_pRoot.

Referenced by StgIo::SetupStreams().

◆ SetSize()

bool StgDirStrm::SetSize ( sal_Int32  nBytes)
overridevirtual

Reimplemented from StgDataStrm.

Definition at line 803 of file stgdir.cxx.

References StgStrm::m_nPageSize, and StgStrm::SetSize().

Referenced by Store().

◆ SetupEntry()

void StgDirStrm::SetupEntry ( sal_Int32  n,
StgDirEntry pUpper 
)
private

◆ Store()

bool StgDirStrm::Store ( )

Friends And Related Function Documentation

◆ StgIterator

friend class StgIterator
friend

Definition at line 87 of file stgdir.hxx.

Member Data Documentation

◆ m_pRoot

StgDirEntry* StgDirStrm::m_pRoot
private

Definition at line 88 of file stgdir.hxx.

Referenced by GetRoot(), SetupEntry(), StgDirStrm(), Store(), and ~StgDirStrm().


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