MRWParser Class Reference

the main class to read a Mariner Write file More...

`#include <MRWParser.hxx>`

Inheritance diagram for MRWParser:

## Public Member Functions

| MRWParser (MWAWInputStreamPtr input, MWAWRSRCParserPtr rsrcParser, MWAWHeader *header)
| constructor More...
virtual | ~MRWParser ()
| destructor More...
bool | checkHeader (MWAWHeader *header, bool strict=false)
| checks if the document header is correct (or not) More...
void | parse (WPXDocumentInterface *documentInterface)
| virtual function used to parse the input More...
Public Member Functions inherited from MWAWParser
virtual | ~MWAWParser ()
| virtual destructor More...
int | version () const
| returns the works version More...
void | setVersion (int vers)
| sets the works version More...

## Protected Member Functions

void | init ()
| inits all internal variables More...
void | createDocument (WPXDocumentInterface *documentInterface)
| creates the listener which will be associated to the document More...
bool | createZones ()
| finds the different objects zones More...
bool | readZone (int &actZone, bool onlyTest=false)
| try to read a zone More...
Vec2f | getPageLeftTop () const
| returns the page left top point ( in inches) More...
MWAWSection | getSection (int zoneId) const
| returns the section information corresponding to a zone More...
void | newPage (int number)
| adds a new page More...
int | getZoneId (uint32_t fileId, bool &endNote)
| return a zoneid corresponding to a fileId (or -1) and set the endnote flag More...
void | sendText (int zoneId)
| ask the text parser to send a zone More...
float | getPatternPercent (int id) const
| return the pattern percent which corresponds to an id (or -1) More...
void | sendToken (int zoneId, long tokenId, MWAWFont const &actFont)
| ask the graph parser to send a token More...
bool | readEntryHeader (MRWEntry &entry)
| try to read an entry header More...
bool | decodeZone (std::vector< MRWStruct > &dataList, long numData=999999)
| try to decode a zone More...
bool | readSeparator (MRWEntry const &entry)
| try to read the separator of differents part More...
bool | readZoneDim (MRWEntry const &entry, int zoneId)
| try to read the zone dimension ( normal and with margin ) More...
bool | readZoneHeader (MRWEntry const &entry, int zoneId, bool onlyTest)
| try to read the zone header More...
bool | readZoneb (MRWEntry const &entry, int zoneId)
| try to read a unknown zone : one by separator?, borderdim? More...
bool | readZonec (MRWEntry const &entry, int zoneId)
| try to read a unknown zone of 9 int More...
bool | readZone13 (MRWEntry const &entry, int zoneId)
| try to read a unknown zone of 23 int More...
bool | readDocInfo (MRWEntry const &entry, int zoneId)
| try to read the doc info zone More...
bool | readPrintInfo (MRWEntry const &entry)
| try to read a printinfo zone More...
bool | readCPRT (MRWEntry const &entry)
| try to read a xml printinfo zone More...
bool | readNumbersString (int num, std::vector< long > &res)
| try to read a number or a list of number entries More...
Protected Member Functions inherited from MWAWParser
| MWAWParser (MWAWInputStreamPtr input, MWAWRSRCParserPtr rsrcParser, MWAWHeader *header)
| constructor (protected) More...
| MWAWParser (MWAWParserStatePtr state)
| constructor using a state More...
MWAWParserStatePtr | getParserState ()
| returns the parser state More...
MWAWHeader * | getHeader ()
| returns the header More...
MWAWInputStreamPtr & | getInput ()
| returns the actual input More...
MWAWContentListenerPtr & | getListener ()
| returns the listener More...
MWAWPageSpan const & | getPageSpan () const
| returns the actual page dimension More...
MWAWPageSpan & | getPageSpan ()
| returns the actual page dimension More...
double | getFormLength () const
| returns the form length More...
double | getFormWidth () const
| returns the form width More...
double | getPageLength () const
| returns the page length (form length without margin ) More...
double | getPageWidth () const
| returns the page width (form width without margin ) More...
MWAWRSRCParserPtr & | getRSRCParser ()
| returns the rsrc parser More...
void | setListener (MWAWContentListenerPtr &listener)
| sets the listener More...
void | resetListener ()
| resets the listener More...
MWAWFontConverterPtr & | getFontConverter ()
| returns the font converter More...
void | setFontConverter (MWAWFontConverterPtr fontConverter)
| sets the font convertor More...
libmwaw::DebugFile & | ascii ()
| a DebugFile used to write what we recognize when we parse the document More...
void | setAsciiName (char const *name)
| Debugging: change the default ascii file. More...
std::string const & | asciiName () const
| return the ascii file name More...

## Protected Attributes

shared_ptr < MRWParserInternal::State > | m_state
| the state More...
bool | m_pageMarginsSpanSet
| a flag to know if page margins span are set More...
shared_ptr< MRWGraph > | m_graphParser
| the graph parser More...
shared_ptr< MRWText > | m_textParser
| the text parser More...

## Friends

class | MRWGraph
class | MRWText
class | MRWParserInternal::SubDocument

## Detailed Description

the main class to read a Mariner Write file

## Constructor & Destructor Documentation

MRWParser::MRWParser | ( | MWAWInputStreamPtr | input,
|  | MWAWRSRCParserPtr | rsrcParser,
|  | MWAWHeader * | header
| ) |  |

constructor

MRWParser::~MRWParser | ( |  | ) |

virtual

destructor

## Member Function Documentation

bool MRWParser::checkHeader | ( | MWAWHeader * | header,
|  | bool | strict = `false`
| ) |  |

virtual

checks if the document header is correct (or not)

Implements MWAWParser.

Referenced by parse().

void MRWParser::createDocument | ( | WPXDocumentInterface * | documentInterface | ) |

protected

creates the listener which will be associated to the document

Referenced by parse().

bool MRWParser::createZones | ( |  | ) |

protected

finds the different objects zones

Referenced by parse().

bool MRWParser::decodeZone | ( | std::vector< MRWStruct > & | dataList,
|  | long | numData = `999999`
| ) |  |

protected

try to decode a zone

Referenced by readDocInfo(), MRWText::readFontNames(), MRWText::readFonts(), MRWText::readPLCZone(), MRWGraph::readPostscript(), MRWText::readRulers(), readSeparator(), MRWText::readStyleNames(), MRWText::readTextStruct(), MRWGraph::readToken(), MRWText::readZone(), readZone(), readZone13(), readZoneb(), readZonec(), readZoneDim(), and readZoneHeader().

Vec2f MRWParser::getPageLeftTop | ( |  | ) | const

protected

returns the page left top point ( in inches)

float MRWParser::getPatternPercent | ( | int | id | ) | const

protected

return the pattern percent which corresponds to an id (or -1)

Referenced by MRWText::readRulers(), and MRWText::sendTable().

MWAWSection MRWParser::getSection | ( | int | zoneId | ) | const

protected

returns the section information corresponding to a zone

Referenced by MRWText::send().

int MRWParser::getZoneId | ( | uint32_t | fileId,
|  | bool & | endNote
| ) |  |

protected

return a zoneid corresponding to a fileId (or -1) and set the endnote flag

Referenced by MRWGraph::sendToken().

void MRWParser::init | ( |  | ) |

protected

inits all internal variables

Referenced by MRWParser().

void MRWParser::newPage | ( | int | number | ) |

protected

adds a new page

Referenced by MRWText::send().

void MRWParser::parse | ( | WPXDocumentInterface * | documentInterface | ) |

virtual

virtual function used to parse the input

Implements MWAWParser.

bool MRWParser::readCPRT | ( | MRWEntry const & | entry | ) |

protected

try to read a xml printinfo zone

Referenced by readZone().

bool MRWParser::readDocInfo | ( | MRWEntry const & | entry,
|  | int | zoneId
| ) |  |

protected

try to read the doc info zone

Referenced by readZone().

bool MRWParser::readEntryHeader | ( | MRWEntry & | entry | ) |

protected

try to read an entry header

Referenced by readZone().

bool MRWParser::readNumbersString | ( | int | num,
|  | std::vector< long > & | res
| ) |  |

protected

try to read a number or a list of number entries

Referenced by decodeZone(), and readEntryHeader().

bool MRWParser::readPrintInfo | ( | MRWEntry const & | entry | ) |

protected

try to read a printinfo zone

Referenced by readZone().

bool MRWParser::readSeparator | ( | MRWEntry const & | entry | ) |

protected

try to read the separator of differents part

Referenced by readZone().

bool MRWParser::readZone | ( | int & | actZone,
|  | bool | onlyTest = `false`
| ) |  |

protected

try to read a zone

Referenced by checkHeader(), and createZones().

bool MRWParser::readZone13 | ( | MRWEntry const & | entry,
|  | int | zoneId
| ) |  |

protected

try to read a unknown zone of 23 int

Referenced by readZone().

bool MRWParser::readZoneb | ( | MRWEntry const & | entry,
|  | int | zoneId
| ) |  |

protected

try to read a unknown zone : one by separator?, borderdim?

Referenced by readZone().

bool MRWParser::readZonec | ( | MRWEntry const & | entry,
|  | int | zoneId
| ) |  |

protected

try to read a unknown zone of 9 int

Referenced by readZone().

bool MRWParser::readZoneDim | ( | MRWEntry const & | entry,
|  | int | zoneId
| ) |  |

protected

try to read the zone dimension ( normal and with margin )

Referenced by readZone().

bool MRWParser::readZoneHeader | ( | MRWEntry const & | entry,
|  | int | zoneId,
|  | bool | onlyTest
| ) |  |

protected

try to read the zone header

Referenced by readZone().

void MRWParser::sendText | ( | int | zoneId | ) |

protected

ask the text parser to send a zone

Referenced by MRWGraph::sendText().

void MRWParser::sendToken | ( | int | zoneId,
|  | long | tokenId,
|  | MWAWFont const & | actFont
| ) |  |

protected

ask the graph parser to send a token

Referenced by MRWText::send().

## Friends And Related Function Documentation

friend class MRWGraph

friend

Referenced by init().

friend class MRWParserInternal::SubDocument

friend

friend class MRWText

friend

Referenced by init().

## Member Data Documentation

shared_ptr<MRWGraph> MRWParser::m_graphParser

protected

the graph parser

Referenced by createDocument(), getPatternPercent(), init(), parse(), readZone(), and sendToken().

bool MRWParser::m_pageMarginsSpanSet

protected

a flag to know if page margins span are set

Referenced by readDocInfo(), and readPrintInfo().

shared_ptr<MRWParserInternal::State> MRWParser::m_state

protected

the state

Referenced by checkHeader(), createDocument(), createZones(), getPageLeftTop(), getSection(), getZoneId(), init(), newPage(), readDocInfo(), readZonec(), readZoneDim(), and readZoneHeader().

shared_ptr<MRWText> MRWParser::m_textParser

protected

the text parser

Referenced by createDocument(), init(), parse(), readZone(), and sendText().

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

- MRWParser.hxx
- MRWParser.cxx