LibreOffice Module lotuswordpro (master) 1
Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
LwpObjectFactory Class Referencefinal

object factory used for lwp object creation and maintenance More...

#include <lwpobjfactory.hxx>

Collaboration diagram for LwpObjectFactory:
[legend]

Classes

struct  eqFunc
 
struct  hashFunc
 

Public Member Functions

 LwpObjectFactory (LwpSvStream *pSvStream)
 
 ~LwpObjectFactory ()
 
rtl::Reference< LwpObjectCreateObject (sal_uInt32 type, LwpObjectHeader &objHdr)
 @descr create all kinds of objects except lwp7 More...
 
rtl::Reference< LwpObjectQueryObject (const LwpObjectID &objID)
 @descr query object by object id object is created if not in the factory More...
 
void ReleaseObject (const LwpObjectID &objID)
 @descr release object in the factory per the object id More...
 
void ReadIndex (LwpSvStream *pStrm)
 @descr read the index manager More...
 
LwpIndexManagerGetIndexManager ()
 

Private Types

typedef std::unordered_map< LwpObjectID, rtl::Reference< LwpObject >, hashFunc, eqFuncLwpIdToObjMap
 

Private Member Functions

rtl::Reference< LwpObjectFindObject (const LwpObjectID &objID)
 @descr find object in the factory per the object id More...
 

Private Attributes

LwpSvStreamm_pSvStream
 
std::vector< LwpObjectIDm_aObjsIDInCreation
 
LwpIdToObjMap m_IdToObjList
 
LwpIndexManager m_IndexMgr
 

Detailed Description

object factory used for lwp object creation and maintenance

Definition at line 81 of file lwpobjfactory.hxx.

Member Typedef Documentation

◆ LwpIdToObjMap

Definition at line 105 of file lwpobjfactory.hxx.

Constructor & Destructor Documentation

◆ LwpObjectFactory()

LwpObjectFactory::LwpObjectFactory ( LwpSvStream pSvStream)
explicit

Definition at line 101 of file lwpobjfactory.cxx.

References m_IdToObjList.

◆ ~LwpObjectFactory()

LwpObjectFactory::~LwpObjectFactory ( )

Definition at line 107 of file lwpobjfactory.cxx.

Member Function Documentation

◆ CreateObject()

rtl::Reference< LwpObject > LwpObjectFactory::CreateObject ( sal_uInt32  type,
LwpObjectHeader objHdr 
)

@descr create all kinds of objects except lwp7

Definition at line 117 of file lwpobjfactory.cxx.

References LwpObjectHeader::GetID(), m_IdToObjList, m_pSvStream, result, SAL_WARN, SAL_WARN_IF, type, VO_ALIGNMENTPIECE, VO_AMIKAKEPIECE, VO_BOOKMARK, VO_BREAKSPIECE, VO_CELLLAYOUT, VO_CELLLIST, VO_CELLRANGE, VO_CHARACTERSTYLE, VO_CHARBORDERPIECE, VO_CHBLKMARKER, VO_COLUMNLAYOUT, VO_CONNECTEDCELLLAYOUT, VO_CONTFROMLAYOUT, VO_CONTONLAYOUT, VO_DEPENDENT, VO_DIVISIONINFO, VO_DIVOPTS, VO_DOCDATA, VO_DOCSOCK, VO_DOCUMENT, VO_DROPCAPLAYOUT, VO_ENDNOTELAYOUT, VO_ENSUPERTABLELAYOUT, VO_FIELDMARKER, VO_FNCELLLAYOUT, VO_FNROWLAYOUT, VO_FNSUPERTABLELAYOUT, VO_FOLDER, VO_FOOTERLAYOUT, VO_FOOTNOTE, VO_FOOTNOTELAYOUT, VO_FOOTNOTEOPTS, VO_FOOTNOTETABLE, VO_FORMULAINFO, VO_FRAMELAYOUT, VO_GLOSSARY, VO_GRAPHIC, VO_GROUPFRAME, VO_GROUPLAYOUT, VO_HEADCONTENT, VO_HEADERLAYOUT, VO_HEADHOLDER, VO_HEADLAYOUT, VO_HEADTAILHOLDER, VO_HIDDENCELLLAYOUT, VO_INDENTPIECE, VO_INDEXSECTION, VO_LAYOUTBACKGROUNDSTUFF, VO_LAYOUTBORDERSTUFF, VO_LAYOUTCOLUMNS, VO_LAYOUTEXTERNALBORDERSTUFF, VO_LAYOUTGEOMETRY, VO_LAYOUTGUTTERSTUFF, VO_LAYOUTJOINSTUFF, VO_LAYOUTMARGINS, VO_LAYOUTNUMERICS, VO_LAYOUTRELATIVITY, VO_LAYOUTSCALE, VO_LAYOUTSHADOW, VO_LISTLIST, VO_NOTEHEADERLAYOUT, VO_NOTELAYOUT, VO_NOTETEXTLAYOUT, VO_NUMBERINGPIECE, VO_NUMERICVALUE, VO_OBJECTHOLDER, VO_OLEOBJECT, VO_PAGEHINT, VO_PAGELAYOUT, VO_PARA, VO_PARABACKGROUNDPIECE, VO_PARABORDERPIECE, VO_PARALLELCOLUMNS, VO_PARASTYLE, VO_PCOLBLOCK, VO_PCOLLAYOUT, VO_POBJECTHOLDER, VO_PROPLIST, VO_ROWHEADINGLAYOUT, VO_ROWLAYOUT, VO_ROWLIST, VO_RUBYLAYOUT, VO_RUBYMARKER, VO_SECTION, VO_SILVERBULLET, VO_SPACINGPIECE, VO_STORY, VO_SUPERGLOSSARYLAYOUT, VO_SUPERPARALLELCOLUMNLAYOUT, VO_SUPERTABLE, VO_SUPERTABLELAYOUT, VO_TABLE, VO_TABLEHEADING, VO_TABLEHEADINGLAYOUT, VO_TABLELAYOUT, VO_TABLERANGE, VO_TABPIECE, VO_TABRACK, VO_TOCLEVELDATA, VO_TOCSUPERTABLELAYOUT, VO_VERDOCUMENT, VO_VERGTR, VO_VERQTR, and VO_VPLAYOUT.

Referenced by QueryObject().

◆ FindObject()

rtl::Reference< LwpObject > LwpObjectFactory::FindObject ( const LwpObjectID objID)
private

@descr find object in the factory per the object id

Definition at line 709 of file lwpobjfactory.cxx.

References m_IdToObjList.

Referenced by QueryObject().

◆ GetIndexManager()

LwpIndexManager & LwpObjectFactory::GetIndexManager ( )
inline

Definition at line 115 of file lwpobjfactory.hxx.

References m_IndexMgr.

Referenced by LwpObjectID::ReadIndexed().

◆ QueryObject()

rtl::Reference< LwpObject > LwpObjectFactory::QueryObject ( const LwpObjectID objID)

◆ ReadIndex()

void LwpObjectFactory::ReadIndex ( LwpSvStream pStrm)

@descr read the index manager

Definition at line 112 of file lwpobjfactory.cxx.

References m_IndexMgr, and LwpIndexManager::Read().

Referenced by Lwp9Reader::ReadIndex().

◆ ReleaseObject()

void LwpObjectFactory::ReleaseObject ( const LwpObjectID objID)

@descr release object in the factory per the object id

Definition at line 724 of file lwpobjfactory.cxx.

References m_IdToObjList.

Referenced by LwpStory::XFConvert().

Member Data Documentation

◆ m_aObjsIDInCreation

std::vector<LwpObjectID> LwpObjectFactory::m_aObjsIDInCreation
private

Definition at line 90 of file lwpobjfactory.hxx.

Referenced by QueryObject().

◆ m_IdToObjList

LwpIdToObjMap LwpObjectFactory::m_IdToObjList
private

Definition at line 106 of file lwpobjfactory.hxx.

Referenced by CreateObject(), FindObject(), LwpObjectFactory(), and ReleaseObject().

◆ m_IndexMgr

LwpIndexManager LwpObjectFactory::m_IndexMgr
private

Definition at line 107 of file lwpobjfactory.hxx.

Referenced by GetIndexManager(), QueryObject(), and ReadIndex().

◆ m_pSvStream

LwpSvStream* LwpObjectFactory::m_pSvStream
private

Definition at line 89 of file lwpobjfactory.hxx.

Referenced by CreateObject(), and QueryObject().


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