LibreOffice Module sot (master) 1
|
#include <stgdir.hxx>
Public Member Functions | |
StgDirStrm (StgIo &) | |
virtual | ~StgDirStrm () override |
virtual bool | SetSize (sal_Int32) override |
bool | Store () |
void * | GetEntry (sal_Int32 n, bool) |
StgDirEntry * | GetRoot () |
StgDirEntry * | Create (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 () |
StgIo & | GetIo () |
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 StgDirEntry * | Find (StgDirEntry &, const OUString &) |
Private Member Functions | |
void | SetupEntry (sal_Int32, StgDirEntry *) |
Private Attributes | |
StgDirEntry * | m_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 | |
StgIo & | m_rIo |
std::unique_ptr< StgFAT > | m_pFat |
StgDirEntry * | m_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 |
Definition at line 85 of file stgdir.hxx.
|
explicit |
Definition at line 698 of file stgdir.cxx.
References StgCache::GetError(), StgEntry::Init(), StgStrm::m_nStart, StgStrm::m_pEntry, m_pRoot, StgDirEntry::SetDirty(), StgEntry::SetName(), StgEntry::SetType(), SetupEntry(), STG_EOF, STG_ROOT, and u.
|
overridevirtual |
Definition at line 724 of file stgdir.cxx.
References m_pRoot.
StgDirEntry * StgDirStrm::Create | ( | StgDirEntry & | rStg, |
const OUString & | rName, | ||
StgEntryType | eType | ||
) |
Definition at line 901 of file stgdir.cxx.
References eType, Find(), StgEntry::Init(), StgAvlNode::Insert(), StgDirEntry::m_bDirty, StgDirEntry::m_bInvalid, StgDirEntry::m_bRemoved, StgDirEntry::m_bTemp, StgDirEntry::m_pDown, StgStrm::m_rIo, StgCache::SetError(), StgEntry::SetName(), StgEntry::SetType(), and SVSTREAM_CANNOT_MAKE.
|
static |
Definition at line 884 of file stgdir.cxx.
References StgAvlNode::Find(), StgEntry::Init(), StgDirEntry::m_pDown, and StgEntry::SetName().
Referenced by Create().
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().
|
inline |
|
overridevirtual |
Reimplemented from StgDataStrm.
Definition at line 803 of file stgdir.cxx.
References StgStrm::m_nPageSize, and StgStrm::SetSize().
Referenced by Store().
|
private |
Definition at line 731 of file stgdir.cxx.
References GetEntry(), StgEntry::GetLeaf(), StgCache::GetStrm(), StgAvlNode::Insert(), StgDirEntry::m_aEntry, StgDirEntry::m_pDown, m_pRoot, StgDirEntry::m_pUp, StgStrm::m_rIo, n, p, SAL_WARN, StgCache::SetError(), SetupEntry(), STG_CHILD, STG_FREE, STG_LEFT, STG_RIGHT, STG_ROOT, STG_STORAGE, STGENTRY_SIZE, SVSTREAM_GENERALERROR, and SvStream::TellEnd().
Referenced by SetupEntry(), and StgDirStrm().
bool StgDirStrm::Store | ( | ) |
Definition at line 815 of file stgdir.cxx.
References StgDirEntry::Commit(), StgStrm::Copy(), StgDirEntry::DelTemp(), StgDirEntry::Enum(), GetEntry(), StgEntry::Init(), StgDirEntry::IsDirty(), StgIo::m_aHdr, StgStrm::m_nOffset, StgStrm::m_nPage, StgStrm::m_nSize, StgStrm::m_nStart, StgStrm::m_pFat, m_pRoot, StgStrm::m_rIo, n, p, StgDirEntry::RevertAll(), StgStrm::SetPos(), SetSize(), StgHeader::SetTOCStart(), STG_EOF, STG_FREE, STGENTRY_SIZE, StgDirEntry::Store(), StgEntry::Store(), and StgDirEntry::StoreStreams().
Referenced by StgIo::CommitAll().
|
friend |
Definition at line 87 of file stgdir.hxx.
|
private |
Definition at line 88 of file stgdir.hxx.
Referenced by GetRoot(), SetupEntry(), StgDirStrm(), Store(), and ~StgDirStrm().