LibreOffice Module sot (master) 1
|
#include <stgdir.hxx>
Public Member Functions | |
StgDirEntry (const void *pBuffer, sal_uInt32 nBufferLen, sal_uInt64 nUnderlyingStreamSize, bool *pbOk) | |
StgDirEntry (const StgEntry &) | |
virtual | ~StgDirEntry () override |
void | Invalidate (bool) |
void | Enum (sal_Int32 &) |
void | DelTemp (bool) |
bool | Store (StgDirStrm &) |
void | SetDirty () |
bool | IsDirty () |
bool | Commit () |
void | OpenStream (StgIo &) |
void | Close () |
sal_Int32 | GetSize () const |
bool | SetSize (sal_Int32) |
sal_Int32 | Seek (sal_Int32) |
sal_Int32 | Read (void *, sal_Int32) |
sal_Int32 | Write (const void *, sal_Int32) |
void | Copy (BaseStorageStream &) |
Public Member Functions inherited from StgAvlNode | |
virtual | ~StgAvlNode () |
StgAvlNode * | Find (StgAvlNode const *) |
virtual sal_Int32 | Compare (const StgAvlNode *) const =0 |
Public Attributes | |
StgEntry | m_aEntry |
sal_Int32 | m_nRefCnt |
StreamMode | m_nMode |
bool | m_bTemp |
bool | m_bDirect |
bool | m_bZombie |
bool | m_bInvalid |
Private Member Functions | |
void | InitMembers () |
virtual sal_Int32 | Compare (const StgAvlNode *) const override |
bool | StoreStream (StgIo &) |
bool | StoreStreams (StgIo &) |
void | RevertAll () |
bool | Strm2Tmp () |
bool | Tmp2Strm () |
Private Attributes | |
StgEntry | m_aSave |
StgDirEntry * | m_pUp |
StgDirEntry * | m_pDown |
StgStrm * | m_pStgStrm |
StgTmpStrm * | m_pTmpStrm |
StgTmpStrm * | m_pCurStrm |
sal_Int32 | m_nEntry |
sal_Int32 | m_nPos |
bool | m_bDirty |
bool | m_bRemoved |
Friends | |
class | StgIterator |
class | StgDirStrm |
Additional Inherited Members | |
Static Public Member Functions inherited from StgAvlNode | |
static bool | Insert (StgAvlNode **, StgAvlNode *) |
static bool | Remove (StgAvlNode **, StgAvlNode *, bool bDel) |
Protected Member Functions inherited from StgAvlNode | |
StgAvlNode () | |
Protected Attributes inherited from StgAvlNode | |
short | m_nId |
short | m_nBalance |
StgAvlNode * | m_pLeft |
StgAvlNode * | m_pRight |
Definition at line 31 of file stgdir.hxx.
StgDirEntry::StgDirEntry | ( | const void * | pBuffer, |
sal_uInt32 | nBufferLen, | ||
sal_uInt64 | nUnderlyingStreamSize, | ||
bool * | pbOk | ||
) |
Definition at line 48 of file stgdir.cxx.
References InitMembers(), StgEntry::Load(), and m_aEntry.
|
explicit |
Definition at line 55 of file stgdir.cxx.
References InitMembers().
|
overridevirtual |
Definition at line 82 of file stgdir.cxx.
References Close(), m_pCurStrm, m_pDown, and m_pStgStrm.
void StgDirEntry::Close | ( | ) |
Definition at line 278 of file stgdir.cxx.
References m_bInvalid, m_bTemp, and m_pTmpStrm.
Referenced by DelTemp(), OLEStorageBase::~OLEStorageBase(), and ~StgDirEntry().
bool StgDirEntry::Commit | ( | ) |
Definition at line 518 of file stgdir.cxx.
References StgIterator::First(), StgEntry::GetType(), m_aEntry, m_aSave, m_bDirect, m_bRemoved, m_pCurStrm, m_pStgStrm, m_pTmpStrm, StgIterator::Next(), p, StgStrm::SetSize(), STG_STORAGE, and STG_STREAM.
Referenced by StorageStream::Commit(), StgDirStrm::Store(), and StorageStream::~StorageStream().
|
overrideprivatevirtual |
Implements StgAvlNode.
Definition at line 92 of file stgdir.cxx.
References StgEntry::Compare(), m_aEntry, and p.
void StgDirEntry::Copy | ( | BaseStorageStream & | rDest | ) |
Definition at line 491 of file stgdir.cxx.
References GetSize(), n, p, Pos, Read(), Seek(), BaseStorageStream::Seek(), BaseStorageStream::SetSize(), BaseStorageStream::Tell(), and BaseStorageStream::Write().
Referenced by StorageStream::CopyTo().
void StgDirEntry::DelTemp | ( | bool | bForce | ) |
Definition at line 135 of file stgdir.cxx.
References Close(), DelTemp(), StgEntry::GetType(), m_aEntry, m_bInvalid, m_bZombie, m_nRefCnt, m_pDown, StgAvlNode::m_pLeft, StgAvlNode::m_pRight, m_pUp, StgAvlNode::Remove(), STG_ROOT, and STG_STORAGE.
Referenced by DelTemp(), and StgDirStrm::Store().
void StgDirEntry::Enum | ( | sal_Int32 & | n | ) |
Definition at line 109 of file stgdir.cxx.
References Enum(), m_aSave, m_nEntry, m_pDown, StgAvlNode::m_pLeft, StgAvlNode::m_pRight, n, StgEntry::SetLeaf(), STG_CHILD, STG_FREE, STG_LEFT, and STG_RIGHT.
Referenced by Enum(), and StgDirStrm::Store().
sal_Int32 StgDirEntry::GetSize | ( | ) | const |
Definition at line 288 of file stgdir.cxx.
References StgEntry::GetSize(), StgTmpStrm::GetSize(), m_aEntry, m_pCurStrm, m_pTmpStrm, and n.
Referenced by Copy(), and StorageStream::GetSize().
|
private |
Definition at line 62 of file stgdir.cxx.
References m_aEntry, m_aSave, m_bDirect, m_bDirty, m_bInvalid, m_bRemoved, m_bTemp, m_bZombie, m_nEntry, m_nMode, m_nPos, m_nRefCnt, m_pCurStrm, m_pDown, m_pStgStrm, m_pTmpStrm, and m_pUp.
Referenced by StgDirEntry().
void StgDirEntry::Invalidate | ( | bool | bDel | ) |
Definition at line 674 of file stgdir.cxx.
References StgIterator::First(), StgEntry::GetType(), m_aEntry, m_bInvalid, m_bRemoved, StgIterator::Next(), p, STG_ROOT, and STG_STORAGE.
bool StgDirEntry::IsDirty | ( | ) |
Definition at line 241 of file stgdir.cxx.
References IsDirty(), m_bDirty, m_bInvalid, m_pDown, StgAvlNode::m_pLeft, and StgAvlNode::m_pRight.
Referenced by IsDirty(), and StgDirStrm::Store().
void StgDirEntry::OpenStream | ( | StgIo & | rIo | ) |
Definition at line 256 of file stgdir.cxx.
References StgEntry::GetSize(), StgHeader::GetThreshold(), m_aEntry, StgIo::m_aHdr, m_bInvalid, m_nPos, m_pStgStrm, and SetSize().
Referenced by StorageStream::StorageStream(), and StoreStream().
sal_Int32 StgDirEntry::Read | ( | void * | p, |
sal_Int32 | nLen | ||
) |
Definition at line 432 of file stgdir.cxx.
References m_nPos, m_pCurStrm, m_pStgStrm, m_pTmpStrm, p, StgStrm::Read(), and SvStream::ReadBytes().
Referenced by Copy(), and StorageStream::Read().
|
private |
Definition at line 228 of file stgdir.cxx.
References m_aEntry, m_aSave, m_pDown, StgAvlNode::m_pLeft, StgAvlNode::m_pRight, and RevertAll().
Referenced by RevertAll(), and StgDirStrm::Store().
sal_Int32 StgDirEntry::Seek | ( | sal_Int32 | nNew | ) |
Definition at line 387 of file stgdir.cxx.
References StgStrm::GetPos(), StgEntry::GetSize(), StgTmpStrm::GetSize(), m_aEntry, m_nMode, m_nPos, m_pCurStrm, m_pStgStrm, m_pTmpStrm, StgStrm::Pos2Page(), Seek(), SvStream::Seek(), and SetSize().
Referenced by Copy(), StorageStream::Read(), Seek(), StorageStream::Seek(), and StorageStream::Write().
|
inline |
Definition at line 70 of file stgdir.hxx.
References m_bDirty.
Referenced by StgStrm::SetEntry(), StgStrm::SetSize(), and StgDirStrm::StgDirStrm().
bool StgDirEntry::SetSize | ( | sal_Int32 | nNewSize | ) |
Definition at line 301 of file stgdir.cxx.
References ERRCODE_NONE, SvStream::GetError(), StgStrm::GetIo(), StgStrm::GetSize(), StgHeader::GetThreshold(), StgStrm::IsSmallStrm(), StgIo::m_aHdr, m_bDirect, m_nMode, m_nPos, m_pStgStrm, m_pTmpStrm, StgStrm::Pos2Page(), StgStrm::Read(), StgStrm::SetEntry(), StgCache::SetError(), StgStrm::SetSize(), StgTmpStrm::SetSize(), STG_EOF, Strm2Tmp(), and StgStrm::Write().
Referenced by OpenStream(), Seek(), StorageStream::SetSize(), and Write().
bool StgDirEntry::Store | ( | StgDirStrm & | rStrm | ) |
Definition at line 167 of file stgdir.cxx.
References m_aSave, m_nEntry, m_pDown, StgAvlNode::m_pLeft, StgAvlNode::m_pRight, rStrm, Store(), and StgEntry::Store().
Referenced by StgDirStrm::Store(), and Store().
|
private |
Definition at line 185 of file stgdir.cxx.
References StgEntry::GetType(), m_aEntry, m_bInvalid, m_pStgStrm, OpenStream(), StgStrm::SetSize(), STG_ROOT, STG_STREAM, and Tmp2Strm().
Referenced by StoreStreams().
|
private |
Definition at line 210 of file stgdir.cxx.
References m_pDown, StgAvlNode::m_pLeft, StgAvlNode::m_pRight, StoreStream(), and StoreStreams().
Referenced by StgDirStrm::Store(), and StoreStreams().
|
private |
Definition at line 548 of file stgdir.cxx.
References StgTmpStrm::Copy(), ERRCODE_NONE, SvStream::GetError(), StgStrm::GetIo(), StgEntry::GetSize(), m_aEntry, m_nPos, m_pCurStrm, m_pStgStrm, m_pTmpStrm, n, p, StgStrm::Pos2Page(), StgStrm::Read(), SvStream::Seek(), StgCache::SetError(), and SvStream::WriteBytes().
|
private |
Definition at line 611 of file stgdir.cxx.
References SvStream::GetError(), StgStrm::GetIo(), StgTmpStrm::GetSize(), StgHeader::GetThreshold(), m_aEntry, StgIo::m_aHdr, m_aSave, m_nPos, m_pCurStrm, m_pStgStrm, m_pTmpStrm, n, p, StgStrm::Pos2Page(), SvStream::ReadBytes(), SvStream::Seek(), StgStrm::SetEntry(), StgCache::SetError(), StgStrm::SetSize(), and STG_EOF.
Referenced by StoreStream(), and Write().
sal_Int32 StgDirEntry::Write | ( | const void * | p, |
sal_Int32 | nLen | ||
) |
Definition at line 455 of file stgdir.cxx.
References SvStream::GetError(), StgStrm::GetIo(), StgStrm::GetSize(), m_bDirect, m_nMode, m_nPos, m_pCurStrm, m_pStgStrm, m_pTmpStrm, p, StgStrm::Pos2Page(), StgCache::SetError(), SetSize(), Strm2Tmp(), Tmp2Strm(), StgStrm::Write(), and SvStream::WriteBytes().
Referenced by StorageStream::Write().
|
friend |
Definition at line 34 of file stgdir.hxx.
|
friend |
Definition at line 33 of file stgdir.hxx.
StgEntry StgDirEntry::m_aEntry |
Definition at line 53 of file stgdir.hxx.
Referenced by Commit(), Compare(), DelTemp(), GetSize(), InitMembers(), Invalidate(), OpenStream(), RevertAll(), Seek(), StgStrm::SetEntry(), StgStrm::SetSize(), StgDirStrm::SetupEntry(), StgDirEntry(), StoreStream(), Strm2Tmp(), SvStorageInfo::SvStorageInfo(), and Tmp2Strm().
|
private |
Definition at line 35 of file stgdir.hxx.
Referenced by Commit(), Enum(), InitMembers(), RevertAll(), Store(), and Tmp2Strm().
bool StgDirEntry::m_bDirect |
Definition at line 57 of file stgdir.hxx.
Referenced by Commit(), InitMembers(), SetSize(), OLEStorageBase::Validate_Impl(), Write(), and StorageStream::~StorageStream().
|
private |
Definition at line 43 of file stgdir.hxx.
Referenced by StgDirStrm::Create(), InitMembers(), IsDirty(), and SetDirty().
bool StgDirEntry::m_bInvalid |
Definition at line 59 of file stgdir.hxx.
Referenced by Close(), StgDirStrm::Create(), DelTemp(), InitMembers(), Invalidate(), IsDirty(), OpenStream(), StoreStream(), and OLEStorageBase::Validate_Impl().
|
private |
Definition at line 44 of file stgdir.hxx.
Referenced by Commit(), StgDirStrm::Create(), InitMembers(), and Invalidate().
bool StgDirEntry::m_bTemp |
Definition at line 56 of file stgdir.hxx.
Referenced by Close(), StgDirStrm::Create(), and InitMembers().
bool StgDirEntry::m_bZombie |
Definition at line 58 of file stgdir.hxx.
Referenced by DelTemp(), InitMembers(), and OLEStorageBase::~OLEStorageBase().
|
private |
Definition at line 41 of file stgdir.hxx.
Referenced by Enum(), InitMembers(), and Store().
StreamMode StgDirEntry::m_nMode |
Definition at line 55 of file stgdir.hxx.
Referenced by InitMembers(), Seek(), SetSize(), StorageStream::StorageStream(), and Write().
|
private |
Definition at line 42 of file stgdir.hxx.
Referenced by InitMembers(), OpenStream(), Read(), Seek(), SetSize(), Strm2Tmp(), Tmp2Strm(), and Write().
sal_Int32 StgDirEntry::m_nRefCnt |
Definition at line 54 of file stgdir.hxx.
Referenced by DelTemp(), InitMembers(), OLEStorageBase::OLEStorageBase(), StorageStream::StorageStream(), OLEStorageBase::~OLEStorageBase(), and StorageStream::~StorageStream().
|
private |
Definition at line 40 of file stgdir.hxx.
Referenced by Commit(), GetSize(), InitMembers(), Read(), Seek(), Strm2Tmp(), Tmp2Strm(), Write(), and ~StgDirEntry().
|
private |
Definition at line 37 of file stgdir.hxx.
Referenced by StgDirStrm::Create(), DelTemp(), Enum(), StgDirStrm::Find(), InitMembers(), IsDirty(), RevertAll(), StgDirStrm::SetupEntry(), Store(), StoreStreams(), and ~StgDirEntry().
|
private |
Definition at line 38 of file stgdir.hxx.
Referenced by Commit(), InitMembers(), OpenStream(), Read(), Seek(), SetSize(), StoreStream(), Strm2Tmp(), Tmp2Strm(), Write(), and ~StgDirEntry().
|
private |
Definition at line 39 of file stgdir.hxx.
Referenced by Close(), Commit(), GetSize(), InitMembers(), Read(), Seek(), SetSize(), Strm2Tmp(), Tmp2Strm(), and Write().
|
private |
Definition at line 36 of file stgdir.hxx.
Referenced by DelTemp(), InitMembers(), and StgDirStrm::SetupEntry().