libmspub::MSPUBParser2k Class Reference documentation

Public Member Functions | Protected Member Functions | Static Protected Member Functions | Static Private Member Functions | Private Attributes | List of all members
libmspub::MSPUBParser2k Class Reference

`#include <MSPUBParser2k.h>`

Inheritance diagram for libmspub::MSPUBParser2k:

## Public Member Functions
| MSPUBParser2k (librevenge::RVNGInputStream *input, MSPUBCollector *collector)
virtual bool | parse ()
virtual | ~MSPUBParser2k ()
Public Member Functions inherited from libmspub::MSPUBParser
| MSPUBParser (librevenge::RVNGInputStream *input, MSPUBCollector *collector)
virtual | ~MSPUBParser ()

## Protected Member Functions
bool | parse2kShapeChunk (const ContentChunkReference &chunk, librevenge::RVNGInputStream *input, boost::optional< unsigned > pageSeqNum=boost::optional< unsigned >(), bool topLevelCall=true)
void | parseShapeLine (librevenge::RVNGInputStream *input, bool isRectangle, unsigned offset, unsigned seqNum)
void | parseShapeType (librevenge::RVNGInputStream *input, unsigned seqNum, unsigned chunkOffset, bool &isGroup, bool &isLine, bool &isImage, bool &isRectangle, unsigned &flagsOffset)
void | parseShapeRotation (librevenge::RVNGInputStream *input, bool isGroup, bool isLine, unsigned seqNum, unsigned chunkOffset)
void | parseShapeFlips (librevenge::RVNGInputStream *input, unsigned flagsOffset, unsigned seqNum, unsigned chunkOffset)
void | parseShapeCoordinates (librevenge::RVNGInputStream *input, unsigned seqNum, unsigned chunkOffset)
bool | parseGroup (librevenge::RVNGInputStream *input, unsigned seqNum, unsigned page)
void | assignShapeImgIndex (unsigned seqNum)
void | parseShapeFill (librevenge::RVNGInputStream *input, unsigned seqNum, unsigned chunkOffset)
bool | parseContents (librevenge::RVNGInputStream *input)
virtual bool | parseDocument (librevenge::RVNGInputStream *input)
virtual unsigned | getColorIndexByQuillEntry (unsigned entry)
virtual int | translateCoordinateIfNecessary (int coordinate) const
virtual unsigned | getFirstLineOffset () const
virtual unsigned | getSecondLineOffset () const
virtual unsigned | getShapeFillTypeOffset () const
virtual unsigned | getShapeFillColorOffset () const
virtual unsigned short | getTextMarker () const
virtual unsigned | getTextIdOffset () const
virtual void | parseContentsTextIfNecessary (librevenge::RVNGInputStream *input)
Protected Member Functions inherited from libmspub::MSPUBParser
| MSPUBParser ()
| MSPUBParser (const MSPUBParser &)
MSPUBParser & | operator= (const MSPUBParser &)
bool | parseMetaData (librevenge::RVNGInputStream *input)
bool | parseQuill (librevenge::RVNGInputStream *input)
bool | parseEscher (librevenge::RVNGInputStream *input)
bool | parseEscherDelay (librevenge::RVNGInputStream *input)
MSPUBBlockInfo | parseBlock (librevenge::RVNGInputStream *input, bool skipHierarchicalData=false)
EscherContainerInfo | parseEscherContainer (librevenge::RVNGInputStream *input)
bool | parseContentChunkReference (librevenge::RVNGInputStream *input, MSPUBBlockInfo block)
QuillChunkReference | parseQuillChunkReference (librevenge::RVNGInputStream *input)
bool | parseDocumentChunk (librevenge::RVNGInputStream *input, const ContentChunkReference &chunk)
bool | parsePageChunk (librevenge::RVNGInputStream *input, const ContentChunkReference &chunk)
bool | parsePaletteChunk (librevenge::RVNGInputStream *input, const ContentChunkReference &chunk)
bool | parsePageShapeList (librevenge::RVNGInputStream *input, MSPUBBlockInfo block, unsigned pageSeqNum)
bool | parseShape (librevenge::RVNGInputStream *input, const ContentChunkReference &chunk)
bool | parseBorderArtChunk (librevenge::RVNGInputStream *input, const ContentChunkReference &chunk)
bool | parseFontChunk (librevenge::RVNGInputStream *input, const ContentChunkReference &chunk)
void | parsePaletteEntry (librevenge::RVNGInputStream *input, MSPUBBlockInfo block)
void | parseColors (librevenge::RVNGInputStream *input, const QuillChunkReference &chunk)
void | parseFonts (librevenge::RVNGInputStream *input, const QuillChunkReference &chunk)
void | parseDefaultStyle (librevenge::RVNGInputStream *input, const QuillChunkReference &chunk)
void | parseShapeGroup (librevenge::RVNGInputStream *input, const EscherContainerInfo &spgr, Coordinate parentCoordinateSystem, Coordinate parentGroupAbsoluteCoord)
void | skipBlock (librevenge::RVNGInputStream *input, MSPUBBlockInfo block)
void | parseEscherShape (librevenge::RVNGInputStream *input, const EscherContainerInfo &sp, Coordinate &parentCoordinateSystem, Coordinate &parentGroupAbsoluteCoord)
bool | findEscherContainer (librevenge::RVNGInputStream *input, const EscherContainerInfo &parent, EscherContainerInfo &out, unsigned short type)
bool | findEscherContainerWithTypeInSet (librevenge::RVNGInputStream *input, const EscherContainerInfo &parent, EscherContainerInfo &out, std::set< unsigned short > types)
std::map< unsigned short, unsigned > | extractEscherValues (librevenge::RVNGInputStream *input, const EscherContainerInfo &record)
FOPTValues | extractFOPTValues (librevenge::RVNGInputStream *input, const libmspub::EscherContainerInfo &record)
std::vector< TextSpanReference > | parseCharacterStyles (librevenge::RVNGInputStream *input, const QuillChunkReference &chunk)
std::vector< TextParagraphReference > | parseParagraphStyles (librevenge::RVNGInputStream *input, const QuillChunkReference &chunk)
std::vector< Calculation > | parseGuides (const std::vector< unsigned char > &guideData)
std::vector< Vertex > | parseVertices (const std::vector< unsigned char > &vertexData)
std::vector< unsigned > | parseTableCellDefinitions (librevenge::RVNGInputStream *input, const QuillChunkReference &chunk)
std::vector< unsigned short > | parseSegments (const std::vector< unsigned char > &segmentData)
DynamicCustomShape | getDynamicCustomShape (const std::vector< unsigned char > &vertexData, const std::vector< unsigned char > &segmentData, const std::vector< unsigned char > &guideData, unsigned geoWidth, unsigned geoHeight)
int | getColorIndex (librevenge::RVNGInputStream *input, const MSPUBBlockInfo &info)
unsigned | getFontIndex (librevenge::RVNGInputStream *input, const MSPUBBlockInfo &info)
CharacterStyle | getCharacterStyle (librevenge::RVNGInputStream *input)
ParagraphStyle | getParagraphStyle (librevenge::RVNGInputStream *input)
boost::shared_ptr< Fill > | getNewFill (const std::map< unsigned short, unsigned > &foptValues, bool &skipIfNotBg, std::map< unsigned short, std::vector< unsigned char > > &foptVal)

## Static Protected Member Functions
static Color | getColorBy2kIndex (unsigned char index)
static Color | getColorBy2kHex (unsigned hex)
static unsigned | translate2kColorReference (unsigned ref2k)
static PageType | getPageTypeBySeqNum (unsigned seqNum)
Static Protected Member Functions inherited from libmspub::MSPUBParser
static short | getBlockDataLength (unsigned type)
static bool | isBlockDataString (unsigned type)
static PageType | getPageTypeBySeqNum (unsigned seqNum)
static unsigned | getEscherElementTailLength (unsigned short type)
static unsigned | getEscherElementAdditionalHeaderLength (unsigned short type)
static ImgType | imgTypeByBlipType (unsigned short type)
static int | getStartOffset (ImgType type, unsigned short initial)
static bool | lineExistsByFlagPointer (unsigned *flags, unsigned *geomFlags=NULL)

## Static Private Member Functions
static ShapeType | getShapeType (unsigned char shapeSpecifier)

## Private Attributes
std::vector< unsigned > | m_imageDataChunkIndices
std::vector< unsigned > | m_quillColorEntries
std::map< unsigned, std::vector< unsigned > > | m_chunkChildIndicesById

## Additional Inherited Members
Protected Types inherited from libmspub::MSPUBParser
typedef std::vector< ContentChunkReference >::const_iterator | ccr_iterator_t
Protected Attributes inherited from libmspub::MSPUBParser
librevenge::RVNGInputStream * | m_input
MSPUBCollector * | m_collector
std::vector< MSPUBBlockInfo > | m_blockInfo
std::vector< ContentChunkReference > | m_contentChunks
std::vector< unsigned > | m_cellsChunkIndices
std::vector< unsigned > | m_pageChunkIndices
std::vector< unsigned > | m_shapeChunkIndices
std::vector< unsigned > | m_paletteChunkIndices
std::vector< unsigned > | m_borderArtChunkIndices
std::vector< unsigned > | m_fontChunkIndices
std::vector< unsigned > | m_unknownChunkIndices
boost::optional< unsigned > | m_documentChunkIndex
int | m_lastSeenSeqNum
unsigned | m_lastAddedImage
std::vector< int > | m_alternateShapeSeqNums
std::vector< int > | m_escherDelayIndices

## Constructor & Destructor Documentation

## § MSPUBParser2k()

libmspub::MSPUBParser2k::MSPUBParser2k | ( | librevenge::RVNGInputStream * | input,
|  | MSPUBCollector * | collector
| ) |  |
| explicit

## § ~MSPUBParser2k()

libmspub::MSPUBParser2k::~MSPUBParser2k | ( |  | ) |
| virtual

## Member Function Documentation

## § assignShapeImgIndex()

void libmspub::MSPUBParser2k::assignShapeImgIndex | ( | unsigned | seqNum | ) |
| protected

Referenced by parse2kShapeChunk().

## § getColorBy2kHex()

Color libmspub::MSPUBParser2k::getColorBy2kHex | ( | unsigned | hex | ) |
| staticprotected

Referenced by parseContents(), and translate2kColorReference().

## § getColorBy2kIndex()

Color libmspub::MSPUBParser2k::getColorBy2kIndex | ( | unsigned char | index | ) |
| staticprotected

Referenced by getColorBy2kHex().

## § getColorIndexByQuillEntry()

unsigned libmspub::MSPUBParser2k::getColorIndexByQuillEntry | ( | unsigned | entry | ) |
| protectedvirtual

Reimplemented from libmspub::MSPUBParser.

Referenced by libmspub::MSPUBParser97::readCharacterStyle().

## § getFirstLineOffset()

unsigned libmspub::MSPUBParser2k::getFirstLineOffset | ( |  | ) | const
| protectedvirtual

Reimplemented in libmspub::MSPUBParser97.

Referenced by parseShapeLine().

## § getPageTypeBySeqNum()

PageType libmspub::MSPUBParser2k::getPageTypeBySeqNum | ( | unsigned | seqNum | ) |
| staticprotected

Referenced by parse2kShapeChunk().

## § getSecondLineOffset()

unsigned libmspub::MSPUBParser2k::getSecondLineOffset | ( |  | ) | const
| protectedvirtual

Reimplemented in libmspub::MSPUBParser97.

Referenced by parseShapeLine().

## § getShapeFillColorOffset()

unsigned libmspub::MSPUBParser2k::getShapeFillColorOffset | ( |  | ) | const
| protectedvirtual

Reimplemented in libmspub::MSPUBParser97.

Referenced by parseShapeFill().

## § getShapeFillTypeOffset()

unsigned libmspub::MSPUBParser2k::getShapeFillTypeOffset | ( |  | ) | const
| protectedvirtual

Reimplemented in libmspub::MSPUBParser97.

Referenced by parseShapeFill().

## § getShapeType()

ShapeType libmspub::MSPUBParser2k::getShapeType | ( | unsigned char | shapeSpecifier | ) |
| staticprivate

Referenced by parseShapeType().

## § getTextIdOffset()

unsigned libmspub::MSPUBParser2k::getTextIdOffset | ( |  | ) | const
| protectedvirtual

Reimplemented in libmspub::MSPUBParser97.

Referenced by parseShapeType().

## § getTextMarker()

unsigned short libmspub::MSPUBParser2k::getTextMarker | ( |  | ) | const
| protectedvirtual

Reimplemented in libmspub::MSPUBParser97.

Referenced by parseShapeType().

## § parse()

bool libmspub::MSPUBParser2k::parse | ( |  | ) |
| virtual

Reimplemented from libmspub::MSPUBParser.

Reimplemented in libmspub::MSPUBParser97.

## § parse2kShapeChunk()

bool libmspub::MSPUBParser2k::parse2kShapeChunk | ( | const ContentChunkReference & | chunk,
|  | librevenge::RVNGInputStream * | input,
|  | boost::optional< unsigned > | pageSeqNum = `boost::optional<unsigned>()`,
|  | bool | topLevelCall = `true`
| ) |  |
| protected

Referenced by parseContents(), and parseGroup().

## § parseContents()

bool libmspub::MSPUBParser2k::parseContents | ( | librevenge::RVNGInputStream * | input | ) |
| protectedvirtual

Reimplemented from libmspub::MSPUBParser.

Referenced by libmspub::MSPUBParser97::parse(), and parse().

## § parseContentsTextIfNecessary()

void libmspub::MSPUBParser2k::parseContentsTextIfNecessary | ( | librevenge::RVNGInputStream * | input | ) |
| protectedvirtual

Reimplemented in libmspub::MSPUBParser97.

Referenced by parseContents().

## § parseDocument()

bool libmspub::MSPUBParser2k::parseDocument | ( | librevenge::RVNGInputStream * | input | ) |
| protectedvirtual

Reimplemented in libmspub::MSPUBParser97.

Referenced by parseContents().

## § parseGroup()

bool libmspub::MSPUBParser2k::parseGroup | ( | librevenge::RVNGInputStream * | input,
|  | unsigned | seqNum,
|  | unsigned | page
| ) |  |
| protected

Referenced by parse2kShapeChunk().

## § parseShapeCoordinates()

void libmspub::MSPUBParser2k::parseShapeCoordinates | ( | librevenge::RVNGInputStream * | input,
|  | unsigned | seqNum,
|  | unsigned | chunkOffset
| ) |  |
| protected

Referenced by parse2kShapeChunk().

## § parseShapeFill()

void libmspub::MSPUBParser2k::parseShapeFill | ( | librevenge::RVNGInputStream * | input,
|  | unsigned | seqNum,
|  | unsigned | chunkOffset
| ) |  |
| protected

Referenced by parse2kShapeChunk().

## § parseShapeFlips()

void libmspub::MSPUBParser2k::parseShapeFlips | ( | librevenge::RVNGInputStream * | input,
|  | unsigned | flagsOffset,
|  | unsigned | seqNum,
|  | unsigned | chunkOffset
| ) |  |
| protected

Referenced by parse2kShapeChunk().

## § parseShapeLine()

void libmspub::MSPUBParser2k::parseShapeLine | ( | librevenge::RVNGInputStream * | input,
|  | bool | isRectangle,
|  | unsigned | offset,
|  | unsigned | seqNum
| ) |  |
| protected

Referenced by parse2kShapeChunk().

## § parseShapeRotation()

void libmspub::MSPUBParser2k::parseShapeRotation | ( | librevenge::RVNGInputStream * | input,
|  | bool | isGroup,
|  | bool | isLine,
|  | unsigned | seqNum,
|  | unsigned | chunkOffset
| ) |  |
| protected

Referenced by parse2kShapeChunk().

## § parseShapeType()

void libmspub::MSPUBParser2k::parseShapeType | ( | librevenge::RVNGInputStream * | input,
|  | unsigned | seqNum,
|  | unsigned | chunkOffset,
|  | bool & | isGroup,
|  | bool & | isLine,
|  | bool & | isImage,
|  | bool & | isRectangle,
|  | unsigned & | flagsOffset
| ) |  |
| protected

Referenced by parse2kShapeChunk().

## § translate2kColorReference()

unsigned libmspub::MSPUBParser2k::translate2kColorReference | ( | unsigned | ref2k | ) |
| staticprotected

Referenced by getColorIndexByQuillEntry(), parseShapeFill(), and parseShapeLine().

## § translateCoordinateIfNecessary()

int libmspub::MSPUBParser2k::translateCoordinateIfNecessary | ( | int | coordinate | ) | const
| protectedvirtual

Reimplemented in libmspub::MSPUBParser97.

Referenced by parseShapeCoordinates().

## Member Data Documentation

## § m_chunkChildIndicesById

std::map<unsigned, std::vector<unsigned> > libmspub::MSPUBParser2k::m_chunkChildIndicesById
| private

Referenced by parseContents(), and parseGroup().

## § m_imageDataChunkIndices

std::vector<unsigned> libmspub::MSPUBParser2k::m_imageDataChunkIndices
| private

Referenced by assignShapeImgIndex(), and parseContents().

## § m_quillColorEntries

std::vector<unsigned> libmspub::MSPUBParser2k::m_quillColorEntries
| private

Referenced by getColorIndexByQuillEntry().

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

- MSPUBParser2k.h
- MSPUBParser2k.cpp