Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
libvisio::VSDParser Class Reference

`#include <VSDParser.h>`

Inheritance diagram for libvisio::VSDParser:

## Public Member Functions
| VSDParser (librevenge::RVNGInputStream *input, librevenge::RVNGDrawingInterface *painter, librevenge::RVNGInputStream *container=nullptr)
virtual | ~VSDParser ()
bool | parseMain ()
bool | extractStencils ()

## Protected Member Functions
void | readEllipticalArcTo (librevenge::RVNGInputStream *input)
void | readForeignData (librevenge::RVNGInputStream *input)
void | readEllipse (librevenge::RVNGInputStream *input)
virtual void | readLine (librevenge::RVNGInputStream *input)
virtual void | readFillAndShadow (librevenge::RVNGInputStream *input)
virtual void | readGeomList (librevenge::RVNGInputStream *input)
void | readGeometry (librevenge::RVNGInputStream *input)
void | readMoveTo (librevenge::RVNGInputStream *input)
void | readLineTo (librevenge::RVNGInputStream *input)
void | readArcTo (librevenge::RVNGInputStream *input)
void | readNURBSTo (librevenge::RVNGInputStream *input)
void | readPolylineTo (librevenge::RVNGInputStream *input)
void | readInfiniteLine (librevenge::RVNGInputStream *input)
void | readShapeData (librevenge::RVNGInputStream *input)
void | readXFormData (librevenge::RVNGInputStream *input)
virtual void | readXForm1D (librevenge::RVNGInputStream *input)
void | readTxtXForm (librevenge::RVNGInputStream *input)
void | readShapeId (librevenge::RVNGInputStream *input)
virtual void | readShapeList (librevenge::RVNGInputStream *input)
void | readForeignDataType (librevenge::RVNGInputStream *input)
void | readPageProps (librevenge::RVNGInputStream *input)
virtual void | readShape (librevenge::RVNGInputStream *input)
void | readColours (librevenge::RVNGInputStream *input)
void | readFont (librevenge::RVNGInputStream *input)
void | readFontIX (librevenge::RVNGInputStream *input)
virtual void | readCharList (librevenge::RVNGInputStream *input)
virtual void | readParaList (librevenge::RVNGInputStream *input)
virtual void | readPropList (librevenge::RVNGInputStream *input)
virtual void | readPage (librevenge::RVNGInputStream *input)
virtual void | readText (librevenge::RVNGInputStream *input)
virtual void | readCharIX (librevenge::RVNGInputStream *input)
virtual void | readParaIX (librevenge::RVNGInputStream *input)
virtual void | readTextBlock (librevenge::RVNGInputStream *input)
virtual void | readTabsDataList (librevenge::RVNGInputStream *input)
virtual void | readTabsData (librevenge::RVNGInputStream *input)
void | readNameList (librevenge::RVNGInputStream *input)
virtual void | readName (librevenge::RVNGInputStream *input)
virtual void | readNameList2 (librevenge::RVNGInputStream *input)
virtual void | readName2 (librevenge::RVNGInputStream *input)
virtual void | readFieldList (librevenge::RVNGInputStream *input)
virtual void | readTextField (librevenge::RVNGInputStream *input)
virtual void | readStyleSheet (librevenge::RVNGInputStream *input)
void | readPageSheet (librevenge::RVNGInputStream *input)
void | readSplineStart (librevenge::RVNGInputStream *input)
void | readSplineKnot (librevenge::RVNGInputStream *input)
void | readStencilShape (librevenge::RVNGInputStream *input)
void | readOLEList (librevenge::RVNGInputStream *input)
void | readOLEData (librevenge::RVNGInputStream *input)
virtual void | readNameIDX (librevenge::RVNGInputStream *input)
virtual void | readNameIDX123 (librevenge::RVNGInputStream *input)
virtual void | readMisc (librevenge::RVNGInputStream *input)
virtual void | readLayerList (librevenge::RVNGInputStream *input)
virtual void | readLayer (librevenge::RVNGInputStream *input)
virtual void | readLayerMem (librevenge::RVNGInputStream *input)
bool | parseDocument (librevenge::RVNGInputStream *input, unsigned shift)
void | parseMetaData ()
void | handleStreams (librevenge::RVNGInputStream *input, unsigned ptrType, unsigned shift, unsigned level, std::set< unsigned > &visited)
void | handleStream (const Pointer &ptr, unsigned idx, unsigned level, std::set< unsigned > &visited)
void | handleChunks (librevenge::RVNGInputStream *input, unsigned level)
void | handleChunk (librevenge::RVNGInputStream *input)
void | handleBlob (librevenge::RVNGInputStream *input, unsigned shift, unsigned level)
virtual void | readPointer (librevenge::RVNGInputStream *input, Pointer &ptr)
virtual void | readPointerInfo (librevenge::RVNGInputStream *input, unsigned ptrType, unsigned shift, unsigned &listSize, int &pointerCount)
virtual bool | getChunkHeader (librevenge::RVNGInputStream *input)
void | _handleLevelChange (unsigned level)
Colour | _colourFromIndex (unsigned idx)
void | _flushShape ()
void | _nameFromId (VSDName &name, unsigned id, unsigned level)
virtual unsigned | getUInt (librevenge::RVNGInputStream *input)
virtual int | getInt (librevenge::RVNGInputStream *input)

## Protected Attributes
librevenge::RVNGInputStream * | m_input
librevenge::RVNGDrawingInterface * | m_painter
librevenge::RVNGInputStream * | m_container
ChunkHeader | m_header
VSDCollector * | m_collector
VSDShapeList | m_shapeList
unsigned | m_currentLevel
VSDStencils | m_stencils
VSDStencil * | m_currentStencil
VSDShape | m_shape
bool | m_isStencilStarted
bool | m_isInStyles
unsigned | m_currentShapeLevel
unsigned | m_currentShapeID
unsigned | m_currentLayerListLevel
bool | m_extractStencils
std::vector< Colour > | m_colours
bool | m_isBackgroundPage
bool | m_isShapeStarted
double | m_shadowOffsetX
double | m_shadowOffsetY
VSDGeometryList * | m_currentGeometryList
unsigned | m_currentGeomListCount
std::map< unsigned, VSDName > | m_fonts
std::map< unsigned, VSDName > | m_names
std::map< unsigned, std::map< unsigned, VSDName > > | m_namesMapMap
VSDName | m_currentPageName
std::map< unsigned, VSDTabStop > * | m_currentTabSet

## Private Member Functions
| VSDParser ()
| VSDParser (const VSDParser &)
VSDParser & | operator= (const VSDParser &)

## Constructor & Destructor Documentation

## ◆ VSDParser() [1/3]

libvisio::VSDParser::VSDParser | ( | librevenge::RVNGInputStream * | input,
|  | librevenge::RVNGDrawingInterface * | painter,
|  | librevenge::RVNGInputStream * | container = nullptr )
| explicit

## ◆ ~VSDParser()

libvisio::VSDParser::~VSDParser | ( |  | ) |
| virtual

## ◆ VSDParser() [2/3]

libvisio::VSDParser::VSDParser | ( |  | ) |
| private

## ◆ VSDParser() [3/3]

libvisio::VSDParser::VSDParser | ( | const VSDParser & |  | ) |
| private

## Member Function Documentation

## ◆ _colourFromIndex()

libvisio::Colour libvisio::VSDParser::_colourFromIndex | ( | unsigned | idx | ) |
| protected

## ◆ _flushShape()

void libvisio::VSDParser::_flushShape | ( |  | ) |
| protected

## ◆ _handleLevelChange()

void libvisio::VSDParser::_handleLevelChange | ( | unsigned | level | ) |
| protected

## ◆ _nameFromId()

void libvisio::VSDParser::_nameFromId | ( | VSDName & | name,
|  | unsigned | id,
|  | unsigned | level )
| protected

## ◆ extractStencils()

bool libvisio::VSDParser::extractStencils | ( |  | ) |

## ◆ getChunkHeader()

bool libvisio::VSDParser::getChunkHeader | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser, and libvisio::VSD6Parser.

## ◆ getInt()

int libvisio::VSDParser::getInt | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ getUInt()

unsigned libvisio::VSDParser::getUInt | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ handleBlob()

void libvisio::VSDParser::handleBlob | ( | librevenge::RVNGInputStream * | input,
|  | unsigned | shift,
|  | unsigned | level )
| protected

## ◆ handleChunk()

void libvisio::VSDParser::handleChunk | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ handleChunks()

void libvisio::VSDParser::handleChunks | ( | librevenge::RVNGInputStream * | input,
|  | unsigned | level )
| protected

## ◆ handleStream()

void libvisio::VSDParser::handleStream | ( | const Pointer & | ptr,
|  | unsigned | idx,
|  | unsigned | level,
|  | std::set< unsigned > & | visited )
| protected

## ◆ handleStreams()

void libvisio::VSDParser::handleStreams | ( | librevenge::RVNGInputStream * | input,
|  | unsigned | ptrType,
|  | unsigned | shift,
|  | unsigned | level,
|  | std::set< unsigned > & | visited )
| protected

## ◆ operator=()

VSDParser & libvisio::VSDParser::operator= | ( | const VSDParser & |  | ) |
| private

## ◆ parseDocument()

bool libvisio::VSDParser::parseDocument | ( | librevenge::RVNGInputStream * | input,
|  | unsigned | shift )
| protected

## ◆ parseMain()

bool libvisio::VSDParser::parseMain | ( |  | ) |

## ◆ parseMetaData()

void libvisio::VSDParser::parseMetaData | ( |  | ) |
| protected

## ◆ readArcTo()

void libvisio::VSDParser::readArcTo | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readCharIX()

void libvisio::VSDParser::readCharIX | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser, and libvisio::VSD6Parser.

## ◆ readCharList()

void libvisio::VSDParser::readCharList | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readColours()

void libvisio::VSDParser::readColours | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readEllipse()

void libvisio::VSDParser::readEllipse | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readEllipticalArcTo()

void libvisio::VSDParser::readEllipticalArcTo | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readFieldList()

void libvisio::VSDParser::readFieldList | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readFillAndShadow()

void libvisio::VSDParser::readFillAndShadow | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser, and libvisio::VSD6Parser.

## ◆ readFont()

void libvisio::VSDParser::readFont | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readFontIX()

void libvisio::VSDParser::readFontIX | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readForeignData()

void libvisio::VSDParser::readForeignData | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readForeignDataType()

void libvisio::VSDParser::readForeignDataType | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readGeometry()

void libvisio::VSDParser::readGeometry | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readGeomList()

void libvisio::VSDParser::readGeomList | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readInfiniteLine()

void libvisio::VSDParser::readInfiniteLine | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readLayer()

void libvisio::VSDParser::readLayer | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

## ◆ readLayerList()

void libvisio::VSDParser::readLayerList | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

## ◆ readLayerMem()

void libvisio::VSDParser::readLayerMem | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD6Parser.

## ◆ readLine()

void libvisio::VSDParser::readLine | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readLineTo()

void libvisio::VSDParser::readLineTo | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readMisc()

void libvisio::VSDParser::readMisc | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser, and libvisio::VSD6Parser.

## ◆ readMoveTo()

void libvisio::VSDParser::readMoveTo | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readName()

void libvisio::VSDParser::readName | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD6Parser.

## ◆ readName2()

void libvisio::VSDParser::readName2 | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD6Parser.

## ◆ readNameIDX()

void libvisio::VSDParser::readNameIDX | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readNameIDX123()

void libvisio::VSDParser::readNameIDX123 | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

## ◆ readNameList()

void libvisio::VSDParser::readNameList | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readNameList2()

void libvisio::VSDParser::readNameList2 | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readNURBSTo()

void libvisio::VSDParser::readNURBSTo | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readOLEData()

void libvisio::VSDParser::readOLEData | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readOLEList()

void libvisio::VSDParser::readOLEList | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readPage()

void libvisio::VSDParser::readPage | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readPageProps()

void libvisio::VSDParser::readPageProps | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readPageSheet()

void libvisio::VSDParser::readPageSheet | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readParaIX()

void libvisio::VSDParser::readParaIX | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser, and libvisio::VSD6Parser.

## ◆ readParaList()

void libvisio::VSDParser::readParaList | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readPointer()

void libvisio::VSDParser::readPointer | ( | librevenge::RVNGInputStream * | input,
|  | Pointer & | ptr )
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readPointerInfo()

void libvisio::VSDParser::readPointerInfo | ( | librevenge::RVNGInputStream * | input,
|  | unsigned | ptrType,
|  | unsigned | shift,
|  | unsigned & | listSize,
|  | int & | pointerCount )
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readPolylineTo()

void libvisio::VSDParser::readPolylineTo | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readPropList()

void libvisio::VSDParser::readPropList | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readShape()

void libvisio::VSDParser::readShape | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readShapeData()

void libvisio::VSDParser::readShapeData | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readShapeId()

void libvisio::VSDParser::readShapeId | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readShapeList()

void libvisio::VSDParser::readShapeList | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readSplineKnot()

void libvisio::VSDParser::readSplineKnot | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readSplineStart()

void libvisio::VSDParser::readSplineStart | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readStencilShape()

void libvisio::VSDParser::readStencilShape | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readStyleSheet()

void libvisio::VSDParser::readStyleSheet | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readTabsData()

void libvisio::VSDParser::readTabsData | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

## ◆ readTabsDataList()

void libvisio::VSDParser::readTabsDataList | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readText()

void libvisio::VSDParser::readText | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD6Parser.

## ◆ readTextBlock()

void libvisio::VSDParser::readTextBlock | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readTextField()

void libvisio::VSDParser::readTextField | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser, and libvisio::VSD6Parser.

## ◆ readTxtXForm()

void libvisio::VSDParser::readTxtXForm | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## ◆ readXForm1D()

void libvisio::VSDParser::readXForm1D | ( | librevenge::RVNGInputStream * | input | ) |
| protected virtual

Reimplemented in libvisio::VSD5Parser.

## ◆ readXFormData()

void libvisio::VSDParser::readXFormData | ( | librevenge::RVNGInputStream * | input | ) |
| protected

## Member Data Documentation

## ◆ m_collector

VSDCollector* libvisio::VSDParser::m_collector
| protected

## ◆ m_colours

std::vector<Colour> libvisio::VSDParser::m_colours
| protected

## ◆ m_container

librevenge::RVNGInputStream* libvisio::VSDParser::m_container
| protected

## ◆ m_currentGeometryList

VSDGeometryList* libvisio::VSDParser::m_currentGeometryList
| protected

## ◆ m_currentGeomListCount

unsigned libvisio::VSDParser::m_currentGeomListCount
| protected

## ◆ m_currentLayerListLevel

unsigned libvisio::VSDParser::m_currentLayerListLevel
| protected

## ◆ m_currentLevel

unsigned libvisio::VSDParser::m_currentLevel
| protected

## ◆ m_currentPageName

VSDName libvisio::VSDParser::m_currentPageName
| protected

## ◆ m_currentShapeID

unsigned libvisio::VSDParser::m_currentShapeID
| protected

## ◆ m_currentShapeLevel

unsigned libvisio::VSDParser::m_currentShapeLevel
| protected

## ◆ m_currentStencil

VSDStencil* libvisio::VSDParser::m_currentStencil
| protected

## ◆ m_currentTabSet

std::map<unsigned, VSDTabStop>* libvisio::VSDParser::m_currentTabSet
| protected

## ◆ m_extractStencils

bool libvisio::VSDParser::m_extractStencils
| protected

## ◆ m_fonts

std::map<unsigned, VSDName> libvisio::VSDParser::m_fonts
| protected

## ◆ m_header

ChunkHeader libvisio::VSDParser::m_header
| protected

## ◆ m_input

librevenge::RVNGInputStream* libvisio::VSDParser::m_input
| protected

## ◆ m_isBackgroundPage

bool libvisio::VSDParser::m_isBackgroundPage
| protected

## ◆ m_isInStyles

bool libvisio::VSDParser::m_isInStyles
| protected

## ◆ m_isShapeStarted

bool libvisio::VSDParser::m_isShapeStarted
| protected

## ◆ m_isStencilStarted

bool libvisio::VSDParser::m_isStencilStarted
| protected

## ◆ m_names

std::map<unsigned, VSDName> libvisio::VSDParser::m_names
| protected

## ◆ m_namesMapMap

std::map<unsigned, std::map<unsigned, VSDName> > libvisio::VSDParser::m_namesMapMap
| protected

## ◆ m_painter

librevenge::RVNGDrawingInterface* libvisio::VSDParser::m_painter
| protected

## ◆ m_shadowOffsetX

double libvisio::VSDParser::m_shadowOffsetX
| protected

## ◆ m_shadowOffsetY

double libvisio::VSDParser::m_shadowOffsetY
| protected

## ◆ m_shape

VSDShape libvisio::VSDParser::m_shape
| protected

## ◆ m_shapeList

VSDShapeList libvisio::VSDParser::m_shapeList
| protected

## ◆ m_stencils

VSDStencils libvisio::VSDParser::m_stencils
| protected

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

- VSDParser.h
- VSDParser.cpp