91 if (!ObjHdr.
Read(*pStrm))
94 static_cast<sal_uInt16
>(ObjHdr.
GetSize())));
140 throw std::range_error(
"corrupt RootData");
151 for (k = 1; k < KeyCount; k++)
157 for (k = 0; k < KeyCount; k++)
176 sal_uInt16 LeafCount = KeyCount + 1;
178 std::vector<LwpKey> vObjIndexs;
184 vObjIndexs.push_back(akey);
188 for (k = 1; k < KeyCount; k++)
191 vObjIndexs.push_back(akey);
194 for (k = 0; k < KeyCount; k++)
197 for (k = 0; k < LeafCount; k++)
201 for( sal_uInt16 j=0; j<LeafCount; j++ )
206 if (
nPos != nActualPos)
229 if (!ObjHdr.
Read(*pStrm))
232 static_cast<sal_uInt16
>(ObjHdr.
GetSize()) );
250 if (!ObjHdr.
Read(*pStrm))
253 static_cast<sal_uInt16
>(ObjHdr.
GetSize()) );
271 for (sal_uInt16 k = 1; k < KeyCount; k++)
277 for (sal_uInt16 j = 0; j < KeyCount; j++)
289 for(sal_uInt16
i=0;
i<nTimeCount; ++
i)
sal_uInt32 m_ChildIndex[256]
static const sal_uInt8 MAXOBJECTIDS
void ReadLeafIndex(LwpSvStream *pStrm)
@descr Read VO_LEAFOBJINDEX
void ReadLeafData(LwpObjectStream *pStrm)
@descr Read data in VO_LEAFOBJINDEX
std::vector< sal_uInt32 > m_TempVec
void ReadObjIndex(LwpSvStream *pStrm)
@descr Read VO_OBJINDEX
sal_uInt32 GetObjOffset(LwpObjectID objid)
@descr get object offset per the object id
std::vector< LwpKey > m_ObjectKeys
void ReadTimeTable(LwpObjectStream *pStrm)
@descr Read time table in VO_ROOTLEAFOBJINDEX and VO_ROOTOBJINDEX
std::vector< LwpKey > m_RootObjs
void Read(LwpSvStream *pStrm)
@descr Read all index records, VO_ROOTLEAFOBJINDEX, VO_ROOTOBJINDEX, VO_LEAFOBJINDEX
void ReadObjIndexData(LwpObjectStream *pObjStrm)
@descr Read data in VO_OBJINDEX
void ReadRootData(LwpObjectStream *pObjStrm)
@descr Read data in VO_ROOTOBJINDEX
std::vector< sal_uInt32 > m_TimeTable
sal_uInt16 GetHigh() const
void Read(LwpSvStream *pStrm)
@descr Read object id with format: low(4bytes)+high(2bytes) from stream for LWP7 record
void ReadCompressed(LwpObjectStream *pObj, LwpObjectID const &prev)
@descr Read object id with compressed format from object stream if diff == 255: 255+lowid+highid else...
sal_uInt32 GetLow() const
stream class for LwpObject body data provide stream like interface to read object data
sal_uInt16 QuickReaduInt16(bool *pFailure=nullptr)
@descr Quick read sal_uInt32
LwpSvStream * GetStream()
sal_uInt32 QuickReaduInt32(bool *pFailure=nullptr)
@descr Quick read sal_uInt32
encapsulate XInputStream to provide SvStream like interfaces
bool CheckSeek(sal_Int64 pos)
static const sal_uInt32 LWP_STREAM_BASE
sal_Int64 Seek(sal_Int64 pos)
@descr Seek to pos
#define SAL_N_ELEMENTS(arr)
key structure used to map id to offset